in odata2-lib/odata-testutil/src/main/java/org/apache/olingo/odata2/testutil/mock/TechnicalScenarioEdmProvider.java [106:190]
public EntityType getEntityType(final FullQualifiedName edmFQName) throws ODataMessageException {
if (NAMESPACE_1.equals(edmFQName.getNamespace())) {
if (ET_KEY_IS_STRING.getName().equals(edmFQName.getName())) {
final List<Property> properties = new ArrayList<Property>();
properties.add(new SimpleProperty().setName("KeyString")
.setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setNullable(false)));
final List<NavigationProperty> navigationProperties = new ArrayList<NavigationProperty>();
navigationProperties.add(new NavigationProperty().setName("navProperty").setFromRole(ROLE_1).setToRole(ROLE_2)
.setRelationship(ASSOCIATION_ET1_ET2));
return new EntityType().setName(ET_KEY_IS_STRING.getName()).setProperties(properties).setNavigationProperties(
navigationProperties).setKey(createKey("KeyString"));
} else if (ET_KEY_IS_INTEGER.getName().equals(edmFQName.getName())) {
final List<Property> properties = new ArrayList<Property>();
properties.add(new SimpleProperty().setName("KeyInteger")
.setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setNullable(false)));
final List<NavigationProperty> navigationProperties = new ArrayList<NavigationProperty>();
navigationProperties.add(new NavigationProperty().setName("navProperty").setFromRole(ROLE_2).setToRole(ROLE_1)
.setRelationship(ASSOCIATION_ET1_ET2));
return new EntityType().setName(ET_KEY_IS_INTEGER.getName()).setProperties(properties).setNavigationProperties(
navigationProperties).setKey(createKey("KeyInteger"));
} else if (ET_COMPLEX_KEY.getName().equals(edmFQName.getName())) {
final List<Property> properties = new ArrayList<Property>();
properties.add(new SimpleProperty().setName("KeyString")
.setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setNullable(false)));
properties.add(new SimpleProperty().setName("KeyInteger")
.setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setNullable(false)));
return new EntityType().setName(ET_COMPLEX_KEY.getName()).setProperties(properties).setKey(
createKey("KeyInteger", "KeyString"));
} else if (ET_ALL_TYPES.getName().equals(edmFQName.getName())) {
final List<Property> properties = new ArrayList<Property>();
properties.add(new SimpleProperty().setName("Boolean").setType(EdmSimpleTypeKind.Boolean));
properties.add(new SimpleProperty().setName("Binary").setType(EdmSimpleTypeKind.Binary));
properties.add(new SimpleProperty().setName("Byte").setType(EdmSimpleTypeKind.Byte));
properties.add(new SimpleProperty().setName("DateTime").setType(EdmSimpleTypeKind.DateTime));
properties.add(new SimpleProperty().setName("DateTimeOffset").setType(EdmSimpleTypeKind.DateTimeOffset));
properties.add(new SimpleProperty().setName("Decimal").setType(EdmSimpleTypeKind.Decimal));
properties.add(new SimpleProperty().setName("Double").setType(EdmSimpleTypeKind.Double));
properties.add(new SimpleProperty().setName("Guid").setType(EdmSimpleTypeKind.Guid));
properties.add(new SimpleProperty().setName("Int16").setType(EdmSimpleTypeKind.Int16));
properties.add(new SimpleProperty().setName("Int32").setType(EdmSimpleTypeKind.Int32));
properties.add(new SimpleProperty().setName("Int64").setType(EdmSimpleTypeKind.Int64));
properties.add(new SimpleProperty().setName("SByte").setType(EdmSimpleTypeKind.SByte));
properties.add(new SimpleProperty().setName("Single").setType(EdmSimpleTypeKind.Single));
properties.add(new SimpleProperty().setName("String").setType(EdmSimpleTypeKind.String));
properties.add(new SimpleProperty().setName("Time").setType(EdmSimpleTypeKind.Time));
properties.add(new ComplexProperty().setName("Complex").setType(CT_ALL_TYPES));
return new EntityType().setName(ET_ALL_TYPES.getName()).setProperties(properties);
} else if (ET_STRING_FACETS.getName().equals(edmFQName.getName())) {
final List<Property> properties = new ArrayList<Property>();
properties.add(new SimpleProperty().setName("StringDefaultValue").setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setDefaultValue("defaultValue")));
properties.add(new SimpleProperty().setName("StringFixedLength").setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setFixedLength(true)));
properties.add(new SimpleProperty().setName("StringMaxLength").setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setMaxLength(15)));
properties.add(new SimpleProperty().setName("StringLength").setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setMaxLength(15).setFixedLength(true)));
properties.add(new SimpleProperty().setName("StringNullable").setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setNullable(false)));
properties.add(new SimpleProperty().setName("StringUnicode").setType(EdmSimpleTypeKind.String)
.setFacets(new Facets().setUnicode(false)));
return new EntityType().setName(ET_STRING_FACETS.getName()).setProperties(properties);
}
}
return null;
}