private void checkActionsSetSchema(ActionsSetSchema prevRec, ActionsSetSchema currRec) { checkComplexArrayField(prevRec.schema().getField("actions"), "name", prevRec.getActions(GetMode.DEFAULT), currRec.getActions(GetMode.DEFAULT)); }
private void checkAlternativeKeySchema(AlternativeKeySchema prevRec, AlternativeKeySchema currRec) { checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); checkDoc(prevRec.schema().getField("doc"), prevRec.getDoc(GetMode.DEFAULT), currRec.getDoc(GetMode.DEFAULT)); checkEqualSingleValue(prevRec.schema().getField("type"), prevRec.getType(GetMode.DEFAULT), currRec.getType(GetMode.DEFAULT)); checkEqualSingleValue(prevRec.schema().getField("keyCoercer"), prevRec.getKeyCoercer(GetMode.DEFAULT), currRec.getKeyCoercer(GetMode.DEFAULT)); }
private void checkEntitySchema(EntitySchema prevRec, EntitySchema currRec) { checkEqualSingleValue(prevRec.schema().getField("path"), prevRec.getPath(GetMode.DEFAULT), currRec.getPath(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("actions"), "name", prevRec.getActions(GetMode.DEFAULT), currRec.getActions(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("subresources"), "name", prevRec.getSubresources(GetMode.DEFAULT), currRec.getSubresources(GetMode.DEFAULT)); }
private DataSchema currentSchema() { DataSchema schema; DataSchema mapSchema = _element.getSchema(); if (mapSchema == null) { schema = null; } else { DataSchema dereferencedSchema = mapSchema.getDereferencedDataSchema(); DataSchema.Type deferencedType = dereferencedSchema.getType(); switch (deferencedType) { case RECORD: RecordDataSchema.Field field = ((RecordDataSchema) dereferencedSchema).getField(_currentEntry.getKey()); schema = (field == null ? null : field.getType()); break; case UNION: schema = ((UnionDataSchema) dereferencedSchema).getTypeByMemberKey(_currentEntry.getKey()); break; case MAP: schema = ((MapDataSchema) dereferencedSchema).getValues(); break; default: throw new IllegalStateException("Unknown dereferenced type " + deferencedType + " for DataMap's schema " + mapSchema); } } return schema; }
private void checkSimpleSchema(SimpleSchema prevRec, SimpleSchema currRec) { checkArrayContainment(prevRec.schema().getField("supports"), currRec.getSupports(GetMode.DEFAULT), prevRec.getSupports(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("methods"), "method", prevRec.getMethods(GetMode.DEFAULT), currRec.getMethods(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("actions"), "name", prevRec.getActions(GetMode.DEFAULT), currRec.getActions(GetMode.DEFAULT)); checkComplexField(prevRec.schema().getField("entity"), prevRec.getEntity(GetMode.DEFAULT), currRec.getEntity(GetMode.DEFAULT)); }
protected void recurseRecord(DataElement element, RecordDataSchema schema, DataMap map) { MutableDataElement childElement = new MutableDataElement(element); for (Map.Entry<String, Object> entry : map.entrySet()) { String key = entry.getKey(); RecordDataSchema.Field field = schema.getField(key); Object value = entry.getValue(); if (field != null) { DataSchema childSchema = field.getType(); childElement.setValueNameSchema(value, key, childSchema); validate(childElement, childSchema, value); } else { childElement.setValueNameSchema(value, key, null); handleUnrecognizedField(childElement); } } }
private void checkActionSchema(ActionSchema prevRec, ActionSchema currRec) { checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); checkDoc(prevRec.schema().getField("doc"), prevRec.getDoc(GetMode.DEFAULT), currRec.getDoc(GetMode.DEFAULT)); checkAnnotationsMap(prevRec.schema().getField("annotations"), prevRec.getAnnotations(GetMode.DEFAULT), currRec.getAnnotations(GetMode.DEFAULT)); checkParameterArrayField(prevRec.schema().getField("parameters"), prevRec.getParameters(GetMode.DEFAULT), currRec.getParameters(GetMode.DEFAULT)); checkType("returns", prevRec.getReturns(), currRec.getReturns(), true); checkArrayContainment(prevRec.schema().getField("throws"), prevRec.getThrows(GetMode.DEFAULT), currRec.getThrows(GetMode.DEFAULT)); }
private void checkCollectionSchema(CollectionSchema prevRec, CollectionSchema currRec) { checkComplexField(prevRec.schema().getField("identifier"), prevRec.getIdentifier(GetMode.DEFAULT), currRec.getIdentifier(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("alternativeKeys"), "name", prevRec.getAlternativeKeys(GetMode.DEFAULT), currRec.getAlternativeKeys(GetMode.DEFAULT)); checkArrayContainment(prevRec.schema().getField("supports"), currRec.getSupports(GetMode.DEFAULT), prevRec.getSupports(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("methods"), "method", prevRec.getMethods(GetMode.DEFAULT), currRec.getMethods(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("finders"), "name", prevRec.getFinders(GetMode.DEFAULT), currRec.getFinders(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("actions"), "name", prevRec.getActions(GetMode.DEFAULT), currRec.getActions(GetMode.DEFAULT)); checkComplexField(prevRec.schema().getField("entity"), prevRec.getEntity(GetMode.DEFAULT), currRec.getEntity(GetMode.DEFAULT)); }
private void checkRestMethodSchema(RestMethodSchema prevRec, RestMethodSchema currRec) { checkEqualSingleValue(prevRec.schema().getField("method"), prevRec.getMethod(GetMode.DEFAULT), currRec.getMethod(GetMode.DEFAULT)); checkDoc(prevRec.schema().getField("doc"), prevRec.getDoc(GetMode.DEFAULT), currRec.getDoc(GetMode.DEFAULT)); checkAnnotationsMap(prevRec.schema().getField("annotations"), prevRec.getAnnotations(GetMode.DEFAULT), currRec.getAnnotations(GetMode.DEFAULT)); checkParameterArrayField(prevRec.schema().getField("parameters"), prevRec.getParameters(GetMode.DEFAULT), currRec.getParameters(GetMode.DEFAULT)); checkComplexField(prevRec.schema().getField("metadata"), prevRec.getMetadata(GetMode.DEFAULT), currRec.getMetadata(GetMode.DEFAULT)); checkPagingSupport(prevRec.isPagingSupported(GetMode.DEFAULT), currRec.isPagingSupported(GetMode.DEFAULT)); }
break; case RECORD: field = ((RecordDataSchema) dataSchema).getField(path[i].toString()); if (i == path.length - 1) return field; if (field == null) return null;
break; case RECORD: RecordDataSchema.Field field = ((RecordDataSchema) schema).getField((String) name); if (field != null)
checkEqualSingleValue(prevRec.schema().getField("identifier"), prevRec.getIdentifier(GetMode.DEFAULT), currRec.getIdentifier(GetMode.DEFAULT)); checkEqualComplexArrayField(prevRec.schema().getField("assocKeys"), "name", prevRec.getAssocKeys(GetMode.DEFAULT), currRec.getAssocKeys(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("alternativeKeys"), "name", prevRec.getAlternativeKeys(GetMode.DEFAULT), currRec.getAlternativeKeys(GetMode.DEFAULT)); checkArrayContainment(prevRec.schema().getField("supports"), currRec.getSupports(GetMode.DEFAULT), prevRec.getSupports(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("methods"), "method", prevRec.getMethods(GetMode.DEFAULT), currRec.getMethods(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("finders"), "name", prevRec.getFinders(GetMode.DEFAULT), currRec.getFinders(GetMode.DEFAULT)); checkComplexArrayField(prevRec.schema().getField("actions"),
private void checkAssocKeySchema(AssocKeySchema prevRec, AssocKeySchema currRec) { checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); checkType("type", prevRec.getType(GetMode.DEFAULT), currRec.getType(GetMode.DEFAULT), false); }
checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); checkDoc(prevRec.schema().getField("doc"), prevRec.getDoc(GetMode.DEFAULT), currRec.getDoc(GetMode.DEFAULT)); checkAnnotationsMap(prevRec.schema().getField("annotations"), prevRec.getAnnotations(GetMode.DEFAULT), currRec.getAnnotations(GetMode.DEFAULT)); checkRestLiDataAnnotations(prevRec.schema().getField("annotations"), prevRec.getAnnotations(GetMode.DEFAULT), currRec.getAnnotations(GetMode.DEFAULT), checkEqualSingleValue(prevRec.schema().getField("namespace"), prevRec.getNamespace(GetMode.DEFAULT), currRec.getNamespace(GetMode.DEFAULT)); checkEqualSingleValue(prevRec.schema().getField("path"), prevRec.getPath(GetMode.DEFAULT), currRec.getPath(GetMode.DEFAULT)); checkEqualSingleValue(prevRec.schema().getField("entityType"), prevRec.getEntityType(GetMode.DEFAULT), currRec.getEntityType(GetMode.DEFAULT)); checkComplexField(prevRec.schema().getField("collection"), prevRec.getCollection(), currRec.getCollection()); checkComplexField(prevRec.schema().getField("association"), prevRec.getAssociation(), currRec.getAssociation());
@Override public void key(String key) throws IOException { DataSchema newSchema = null; if (_currentSchema != null) { switch (_currentSchema.getType()) { case RECORD: RecordDataSchema recordSchema = (RecordDataSchema) _currentSchema; RecordDataSchema.Field field = recordSchema.getField(key); if (field != null) { newSchema = field.getType(); } break; case UNION: UnionDataSchema unionSchema = (UnionDataSchema) _currentSchema; newSchema = unionSchema.getTypeByMemberKey(key); break; case MAP: MapDataSchema mapSchema = (MapDataSchema) _currentSchema; newSchema = mapSchema.getValues(); break; } } _pendingSchema = newSchema; super.key(key); }
private void checkFinderSchema(FinderSchema prevRec, FinderSchema currRec) checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); checkDoc(prevRec.schema().getField("doc"), prevRec.getDoc(GetMode.DEFAULT), currRec.getDoc(GetMode.DEFAULT)); checkAnnotationsMap(prevRec.schema().getField("annotations"), prevRec.getAnnotations(GetMode.DEFAULT), currRec.getAnnotations(GetMode.DEFAULT)); checkParameterArrayField(prevRec.schema().getField("parameters"), prevRec.getParameters(GetMode.DEFAULT), currRec.getParameters(GetMode.DEFAULT)); checkComplexField(prevRec.schema().getField("metadata"), prevRec.getMetadata(GetMode.DEFAULT), currRec.getMetadata(GetMode.DEFAULT)); checkEqualSingleValue(prevRec.schema().getField("assocKey"), prevAssocKey, currAssocKey); checkEqualSingleValue(prevRec.schema().getField("assocKeys"), prevAssocKeys, currAssocKeys); checkEqualSingleValue(prevRec.schema().getField("assocKey"), upgradedPrevAssocKeys, currAssocKeys);
RecordDataSchema.Field field = recordDataSchema.getField((String) name); if (field != null)
private void checkIdentifierSchema(IdentifierSchema prevRec, IdentifierSchema currRec) { checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); // type in IdentifierSchema currently can only be named type, thus guaranteed to be string checkType("type", prevRec.getType(GetMode.DEFAULT), currRec.getType(GetMode.DEFAULT), false); checkType("params", prevRec.getParams(GetMode.DEFAULT), currRec.getParams(GetMode.DEFAULT), true); }
resourceMethodDescriptor.getActionReturnRecordDataSchema().getField(ActionResponse.VALUE_NAME).getType()); action.setReturns(returnTypeString);
private void checkParameterSchema(ParameterSchema prevRec, ParameterSchema currRec) checkEqualSingleValue(prevRec.schema().getField("name"), prevRec.getName(GetMode.DEFAULT), currRec.getName(GetMode.DEFAULT)); checkDoc(prevRec.schema().getField("doc"), prevRec.getDoc(GetMode.DEFAULT), currRec.getDoc(GetMode.DEFAULT)); checkAnnotationsMap(prevRec.schema().getField("annotations"), prevRec.getAnnotations(GetMode.DEFAULT), currRec.getAnnotations(GetMode.DEFAULT)); checkParameterOptionality(prevRec.schema().getField("optional"), isQueryParameterOptional(prevOptional, prevDefault), isQueryParameterOptional(currOptional, currDefault));