本文整理了Java中com.google.protobuf.Message.getRepeatedFieldCount()
方法的一些代码示例,展示了Message.getRepeatedFieldCount()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.getRepeatedFieldCount()
方法的具体详情如下:
包路径:com.google.protobuf.Message
类名称:Message
方法名:getRepeatedFieldCount
暂无
代码示例来源:origin: opensourceBIM/BIMserver
int size = message.getRepeatedFieldCount(fieldDescriptor);
for (int index=0; index<size; index++) {
Object repeatedField = message.getRepeatedField(fieldDescriptor, index);
代码示例来源:origin: FoundationDB/fdb-record-layer
@Override
@Nullable
public <M extends Message> Boolean evalMessage(@Nonnull FDBRecordStoreBase<M> store, @Nonnull EvaluationContext context,
@Nullable FDBRecord<M> record, @Nullable Message message) {
if (message == null) {
return null;
}
final int count = message.getRepeatedFieldCount(findFieldDescriptor(message));
if (isEmpty) {
return (count == 0);
} else {
return (count > 0);
}
}
代码示例来源:origin: googleapis/api-compiler
int sizeBeforeMerge =
configBuilder.getRepeatedFieldCount(fieldInLocationsToMerge)
- messageToMergeForm.getRepeatedFieldCount(fieldInLocationsToMerge);
keyToMerge =
new LocationKey(keyToMerge.field, sizeBeforeMerge + (int) keyToMerge.elementKey);
代码示例来源:origin: com.google.api/api-compiler
int sizeBeforeMerge =
configBuilder.getRepeatedFieldCount(fieldInLocationsToMerge)
- messageToMergeForm.getRepeatedFieldCount(fieldInLocationsToMerge);
keyToMerge =
new LocationKey(keyToMerge.field, sizeBeforeMerge + (int) keyToMerge.elementKey);
代码示例来源:origin: cloudera-labs/envelope
/**
* Retrieves and converts Protobuf fields from a Message.
* <p>
* If the field in the {@link com.google.protobuf.Descriptors.Descriptor} exists in the {@link Message}, the value is
* retrieved and converted using {@link #getFieldValue(Descriptors.FieldDescriptor, Object, DataType)}.
* Otherwise, the field value is {@code null}.
* The extraction honors the order of the {@code Descriptor}.
*
* @param dsc the Protobuf Descriptor with all fields
* @param msg the Message with the current field values
* @param schema the Dataset schema derived from the Descriptor
* @return a list of converted values
*/
public static List<Object> buildRowValues(Descriptors.Descriptor dsc, Message msg, StructType schema) {
List<Object> values = new ArrayList<>();
Object val;
for (Descriptors.FieldDescriptor fd : dsc.getFields()) {
if ( (!fd.isRepeated() && msg.hasField(fd)) || (fd.isRepeated() && msg.getRepeatedFieldCount(fd) > 0) ) {
val = getFieldValue(fd, msg.getField(fd), schema.apply(fd.getName()).dataType());
} else {
LOG.trace("FieldDescriptor[{}] => not found", fd.getFullName());
val = null;
}
values.add(val);
}
return values;
}
代码示例来源:origin: FoundationDB/fdb-record-layer
@Nonnull
@Override
public <M extends Message> List<Key.Evaluated> evaluateFunction(@Nullable FDBRecord<M> record,
@Nullable Message message,
@Nonnull Key.Evaluated arguments) {
if (message == null) {
return Collections.emptyList();
}
List<Key.Evaluated> keys = new ArrayList<>();
Descriptors.Descriptor descriptor = message.getDescriptorForType();
Descriptors.FieldDescriptor strField = descriptor.findFieldByNumber(TypesRecord.STR_VALUE_FIELD_NUMBER);
Descriptors.FieldDescriptor strListField = descriptor.findFieldByNumber(TypesRecord.STR_LIST_VALUE_FIELD_NUMBER);
if (message.hasField(strField)) {
keys.add(toKey((String) message.getField(strField)));
}
final int len = message.getRepeatedFieldCount(strListField);
for (int i = 0; i < len; i++) {
keys.add(toKey((String) message.getRepeatedField(strListField, i)));
}
return keys;
}
代码示例来源:origin: FoundationDB/fdb-record-layer
if (message.getRepeatedFieldCount(fieldDescriptor) > 0) {
values = (List<Object>)message.getField(fieldDescriptor);
} else {
内容来源于网络,如有侵权,请联系作者删除!