private GeneratedMessage.Builder<?> buildMessage( GeneratedMessage.Builder<?> builder, byte[] message) throws IOException { try { return builder.mergeFrom(message); } catch (InvalidProtocolBufferException e) { throw new IOException("Could not parse launcher message " + builder.getDescriptorForType().getFullName() + ": " + e.getMessage()); } }
/** * @param fieldNumber * @param value * @throws CouldNotPerformException */ protected final void setDataField(int fieldNumber, Object value) throws CouldNotPerformException { try { try { dataBuilderWriteLock.lock(); Descriptors.FieldDescriptor findFieldByName = dataBuilder.getDescriptorForType().findFieldByNumber(fieldNumber); if (findFieldByName == null) { throw new NotAvailableException("Field[" + fieldNumber + "] does not exist for type " + dataBuilder.getClass().getName()); } dataBuilder.setField(findFieldByName, value); } finally { dataBuilderWriteLock.unlock(); } } catch (CouldNotPerformException | NullPointerException ex) { throw new CouldNotPerformException("Could not set field [" + fieldNumber + "=" + value + "] for " + this, ex); } }
/** * @param fieldName * @param value * @throws CouldNotPerformException */ protected final void setDataField(String fieldName, Object value) throws CouldNotPerformException { try { try { dataBuilderWriteLock.lock(); Descriptors.FieldDescriptor findFieldByName = dataBuilder.getDescriptorForType().findFieldByName(fieldName); if (findFieldByName == null) { throw new NotAvailableException("Field[" + fieldName + "] does not exist for type " + dataBuilder.getClass().getName()); } dataBuilder.setField(findFieldByName, value); } finally { dataBuilderWriteLock.unlock(); } } catch (CouldNotPerformException | NullPointerException ex) { throw new CouldNotPerformException("Could not set field [" + fieldName + "=" + value + "] for " + this, ex); } }
Descriptors.FieldDescriptor findFieldByName = dataBuilder.getInternalBuilder().getDescriptorForType().findFieldByName(FIELD_ACTIVATION_STATE); if (findFieldByName == null) { throw new NotAvailableException("Field[" + FIELD_ACTIVATION_STATE + "] does not exist for type " + dataBuilder.getClass().getName());
String unitTypeName = StringProcessor.transformUpperCaseToCamelCase(unitConfig.getType().name()); String repeatedUnitFieldName = "unit_" + unitConfig.getType().name().toLowerCase() + "_data"; Descriptors.FieldDescriptor repeatedUnitFieldDescriptor = builder.getDescriptorForType().findFieldByName(repeatedUnitFieldName);
@Override public boolean isInitialized() { for (final FieldDescriptor field : getDescriptorForType().getFields()) { // Check that all required fields are present. if (field.isRequired()) { if (!hasField(field)) { return false; } } // Check that embedded messages are initialized. if (field.getJavaType() == FieldDescriptor.JavaType.MESSAGE) { if (field.isRepeated()) { @SuppressWarnings("unchecked") final List<Message> messageList = (List<Message>) getField(field); for (final Message element : messageList) { if (!element.isInitialized()) { return false; } } } else { if (hasField(field) && !((Message) getField(field)).isInitialized()) { return false; } } } } return true; }
public boolean isInitialized() { for (final FieldDescriptor field : getDescriptorForType().getFields()) { // Check that all required fields are present. if (field.isRequired()) { if (!hasField(field)) { return false; } } // Check that embedded messages are initialized. if (field.getJavaType() == FieldDescriptor.JavaType.MESSAGE) { if (field.isRepeated()) { @SuppressWarnings("unchecked") final List<Message> messageList = (List<Message>) getField(field); for (final Message element : messageList) { if (!element.isInitialized()) { return false; } } } else { if (hasField(field) && !((Message) getField(field)).isInitialized()) { return false; } } } } return true; }
/** * @param name * @return * @throws CouldNotPerformException */ protected final boolean hasDataField(final String name) throws CouldNotPerformException { try { MB dataClone = cloneDataBuilder(); Descriptors.FieldDescriptor findFieldByName = dataClone.getDescriptorForType().findFieldByName(name); if (findFieldByName == null) { return false; } return dataClone.hasField(findFieldByName); } catch (Exception ex) { return false; } }
/** * @param name * @return * @throws NotAvailableException */ protected final Object getDataField(String name) throws NotAvailableException { try { MB dataClone = cloneDataBuilder(); Descriptors.FieldDescriptor findFieldByName = dataClone.getDescriptorForType().findFieldByName(name); if (findFieldByName == null) { throw new NotAvailableException("Field[" + name + "] does not exist for type " + dataClone.getClass().getName()); } return dataClone.getField(findFieldByName); } catch (Exception ex) { throw new NotAvailableException(name, this, ex); } }
/** * @param name * @return * @throws CouldNotPerformException */ protected final boolean supportsDataField(final String name) throws CouldNotPerformException { try { Descriptors.FieldDescriptor findFieldByName = dataBuilder.getDescriptorForType().findFieldByName(name); return findFieldByName != null; } catch (NullPointerException ex) { return false; } }
private static GeneratedMessage.Builder<?> buildMessage( GeneratedMessage.Builder<?> builder, byte[] message) { try { return builder.mergeFrom(message); } catch (InvalidProtocolBufferException e) { throw new ScopeException(String.format("Could not build %s: %s", builder.getDescriptorForType().getFullName(), e.getMessage())); } }
private GeneratedMessage.Builder<?> buildMessage( GeneratedMessage.Builder<?> builder, byte[] message) { try { return builder.mergeFrom(message); } catch (InvalidProtocolBufferException e) { throw new ScopeException(String.format("Could not build %s: %s", builder.getDescriptorForType().getFullName(), e.getMessage()), e); } }
/** * @param fieldId * @return */ protected final Descriptors.FieldDescriptor getDataFieldDescriptor(int fieldId) { return cloneDataBuilder().getDescriptorForType().findFieldByNumber(fieldId); }
@Override public boolean isInitialized() { for (final FieldDescriptor field : getDescriptorForType().getFields()) { // Check that all required fields are present. if (field.isRequired()) { if (!hasField(field)) { return false; } } // Check that embedded messages are initialized. if (field.getJavaType() == FieldDescriptor.JavaType.MESSAGE) { if (field.isRepeated()) { @SuppressWarnings("unchecked") final List<Message> messageList = (List<Message>) getField(field); for (final Message element : messageList) { if (!element.isInitialized()) { return false; } } } else { if (hasField(field) && !((Message) getField(field)).isInitialized()) { return false; } } } } return true; }
public boolean isInitialized() { for (final FieldDescriptor field : getDescriptorForType().getFields()) { // Check that all required fields are present. if (field.isRequired()) { if (!hasField(field)) { return false; } } // Check that embedded messages are initialized. if (field.getJavaType() == FieldDescriptor.JavaType.MESSAGE) { if (field.isRepeated()) { @SuppressWarnings("unchecked") final List<Message> messageList = (List<Message>) getField(field); for (final Message element : messageList) { if (!element.isInitialized()) { return false; } } } else { if (hasField(field) && !((Message) getField(field)).isInitialized()) { return false; } } } } return true; }