public static ImmutableMap<String, FieldConfig> toFieldConfigMap( Iterable<FieldConfig> fieldConfigs) { return Maps.uniqueIndex(fieldConfigs, f -> f.getField().getFullName()); } }
public static void validate( ResourceNameMessageConfigs messageConfigs, FieldModel field, ResourceNameTreatment treatment, ResourceNameConfig resourceNameConfig) { switch (treatment) { case NONE: break; case STATIC_TYPES: if (messageConfigs == null || !messageConfigs.fieldHasResourceName(field)) { throw new IllegalArgumentException( "Field must have a resource type specified to support " + "STATIC_TYPES resource name treatment. Field: " + field.getFullName()); } break; case VALIDATE: if (resourceNameConfig == null) { throw new IllegalArgumentException( "Field must have a resource type or field name pattern specified to support " + "VALIDATE resource name treatment. Field: " + field.getFullName()); } break; case UNSET_TREATMENT: case UNRECOGNIZED: default: throw new IllegalArgumentException("Unrecognized resource name type: " + treatment); } }
private static ImmutableMap<String, FieldConfig> createResponseFieldConfigMap( ResourceNameMessageConfigs messageConfig, ImmutableMap<String, ResourceNameConfig> resourceNameConfigs) { ImmutableMap.Builder<String, FieldConfig> builder = ImmutableMap.builder(); if (messageConfig == null) { return builder.build(); } Map<String, FieldConfig> map = new HashMap<>(); for (FieldModel field : messageConfig.getFieldsWithResourceNamesByMessage().values()) { map.put( field.getFullName(), FieldConfig.createMessageFieldConfig( messageConfig, resourceNameConfigs, field, ResourceNameTreatment.STATIC_TYPES)); } builder.putAll(map); return builder.build(); }
private static FieldConfig getChildFieldConfig( Map<String, FieldConfig> fieldConfigMap, FieldConfig parentFieldConfig, TypeModel parentType, String key) { if (parentType.isMap()) { return parentFieldConfig; } else if (parentType.isRepeated()) { return parentFieldConfig; } else if (parentType.isMessage()) { FieldModel childField = parentType.getField(key); if (childField == null) { throw new IllegalArgumentException( "Message type " + parentType + " does not have field " + key); } FieldConfig fieldConfig = fieldConfigMap.get(childField.getFullName()); if (fieldConfig == null) { fieldConfig = FieldConfig.createDefaultFieldConfig(childField); } return fieldConfig; } else { throw new IllegalArgumentException( "Primitive type " + parentType + " cannot have children. Child key: " + key); } }
SimpleLocation.TOPLEVEL, "Multiple entity names specified for field: " + field.getFullName() + ": [" + flattenedFieldEntityName
List<ResourceProtoFieldView> fieldViews = new ArrayList<>(); for (FieldModel field : fields) { FieldConfig fieldConfig = fieldConfigMap.get(field.getFullName()); ResourceNameConfig resourceNameConfig = fieldConfig.getResourceNameConfig(); String fieldTypeSimpleName = namer.getResourceTypeName(resourceNameConfig);