Java Code Examples for org.apache.olingo.odata2.api.edm.provider.Schema#setAssociations()
The following examples show how to use
org.apache.olingo.odata2.api.edm.provider.Schema#setAssociations() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: AnnotationEdmProvider.java From olingo-odata2 with Apache License 2.0 | 5 votes |
public Schema build() { Schema s = new Schema(); s.setUsings(usings); s.setEntityTypes(entityTypes); s.setComplexTypes(complexTypes); s.setAssociations(new ArrayList<Association>(name2Associations.values())); s.setEntityContainers(entityContainers); s.setAnnotationAttributes(annotationAttributes); s.setAnnotationElements(annotationElements); s.setNamespace(namespace); return s; }
Example 2
Source File: EdmSchemaMock.java From olingo-odata2 with Apache License 2.0 | 5 votes |
public static Schema createMockEdmSchema() { Schema schema = new Schema(); schema.setNamespace(NAMESPACE); schema.setComplexTypes(createComplexTypes()); schema.setEntityContainers(createEntityContainer()); schema.setEntityTypes(createEntityTypes()); schema.setAssociations(createAssociations()); return schema; }
Example 3
Source File: Model.java From DataHubSystem with GNU Affero General Public License v3.0 | 4 votes |
@Override public List<Schema> getSchemas() throws ODataException { List<Schema> schemas = new ArrayList<>(); Schema schema = new Schema(); schema.setNamespace(NAMESPACE); fr.gael.dhus.database.object.User u = Security.getCurrentUser(); ArrayList<EntityType> entities = new ArrayList<>(); ArrayList<EntitySet> entitysets = new ArrayList<>(); ArrayList<Association> associations = new ArrayList<>(); ArrayList<AssociationSet> association_sets = new ArrayList<>(); List<FunctionImport> function_imports = new ArrayList<>(); for (AbstractEntitySet<?> entitySet: ENTITYSETS.values()) { if (entitySet.isAuthorized(u)) { entities.add(entitySet.getEntityType()); entitysets.add(entitySet.getEntitySet()); associations.addAll(entitySet.getAssociations()); association_sets.addAll(entitySet.getAssociationSets()); } } for (AbstractOperation op: OPERATIONS.values()) { if (op.canExecute(u)) { function_imports.add(op.getFunctionImport()); } } schema.setEntityTypes(entities); schema.setComplexTypes(new ArrayList<>(COMPLEX_TYPES.values())); schema.setAssociations(new ArrayList<>(associations)); EntityContainer entityContainer = new EntityContainer(); entityContainer.setName(ENTITY_CONTAINER).setDefaultEntityContainer(true); entityContainer.setEntitySets(entitysets); entityContainer.setAssociationSets(new ArrayList<>(association_sets)); entityContainer.setFunctionImports(function_imports); schema.setEntityContainers(Collections.singletonList(entityContainer)); schemas.add(schema); return schemas; }
Example 4
Source File: JPAEdmSchema.java From olingo-odata2 with Apache License 2.0 | 4 votes |
@Override public void build() throws ODataJPAModelException, ODataJPARuntimeException { schema = new Schema(); JPAEdmNameBuilder.build(JPAEdmSchema.this); associationView = new JPAEdmAssociation(JPAEdmSchema.this); complexTypeView = new JPAEdmComplexType(JPAEdmSchema.this); complexTypeView.getBuilder().build(); entityContainerView = new JPAEdmEntityContainer(JPAEdmSchema.this); entityContainerView.getBuilder().build(); schema.setEntityContainers(entityContainerView.getConsistentEdmEntityContainerList()); JPAEdmEntitySetView entitySetView = entityContainerView.getJPAEdmEntitySetView(); if (entitySetView.isConsistent() && entitySetView.getJPAEdmEntityTypeView() != null) { JPAEdmEntityTypeView entityTypeView = entitySetView.getJPAEdmEntityTypeView(); if (entityTypeView.isConsistent() && !entityTypeView.getConsistentEdmEntityTypes().isEmpty()) { schema.setEntityTypes(entityTypeView.getConsistentEdmEntityTypes()); } } if (complexTypeView.isConsistent()) { List<ComplexType> complexTypes = complexTypeView.getConsistentEdmComplexTypes(); List<ComplexType> existingComplexTypes = new ArrayList<ComplexType>(); for (ComplexType complexType : complexTypes) { if (complexType != null && complexTypeView.isReferencedInKey(complexType.getName())) {// null check for // exclude existingComplexTypes.add(complexType); } } if (!existingComplexTypes.isEmpty()) { schema.setComplexTypes(existingComplexTypes); } } List<String> existingAssociationList = new ArrayList<String>(); if (associationView.isConsistent() && !associationView.getConsistentEdmAssociationList().isEmpty()) { List<Association> consistentAssociationList = associationView.getConsistentEdmAssociationList(); schema.setAssociations(consistentAssociationList); for (Association association : consistentAssociationList) { existingAssociationList.add(association.getName()); } } List<EntityType> entityTypes = entityContainerView.getJPAEdmEntitySetView().getJPAEdmEntityTypeView().getConsistentEdmEntityTypes(); List<NavigationProperty> navigationProperties; if (entityTypes != null && !entityTypes.isEmpty()) { for (EntityType entityType : entityTypes) { List<NavigationProperty> consistentNavigationProperties = null; navigationProperties = entityType.getNavigationProperties(); if (navigationProperties != null) { consistentNavigationProperties = new ArrayList<NavigationProperty>(); for (NavigationProperty navigationProperty : navigationProperties) { if (existingAssociationList.contains(navigationProperty.getRelationship().getName())) { consistentNavigationProperties.add(navigationProperty); } } if (consistentNavigationProperties.isEmpty()) { entityType.setNavigationProperties(null); } else { entityType.setNavigationProperties(consistentNavigationProperties); } } } } JPAEdmExtension edmExtension = getJPAEdmExtension(); if (edmExtension != null) { edmExtension.extendJPAEdmSchema(JPAEdmSchema.this); edmExtension.extendWithOperation(JPAEdmSchema.this); JPAEdmFunctionImportView functionImportView = new JPAEdmFunctionImport(JPAEdmSchema.this); functionImportView.getBuilder().build(); if (functionImportView.getConsistentFunctionImportList() != null) { entityContainerView.getEdmEntityContainer().setFunctionImports( functionImportView.getConsistentFunctionImportList()); } } }
Example 5
Source File: CarEdmProvider.java From olingo-odata2 with Apache License 2.0 | 4 votes |
@Override public List<Schema> getSchemas() throws ODataException { List<Schema> schemas = new ArrayList<Schema>(); Schema schema = new Schema(); schema.setNamespace(NAMESPACE); List<EntityType> entityTypes = new ArrayList<EntityType>(); entityTypes.add(getEntityType(ENTITY_TYPE_1_1)); entityTypes.add(getEntityType(ENTITY_TYPE_1_2)); schema.setEntityTypes(entityTypes); List<ComplexType> complexTypes = new ArrayList<ComplexType>(); complexTypes.add(getComplexType(COMPLEX_TYPE)); schema.setComplexTypes(complexTypes); List<Association> associations = new ArrayList<Association>(); associations.add(getAssociation(ASSOCIATION_CAR_MANUFACTURER)); schema.setAssociations(associations); List<EntityContainer> entityContainers = new ArrayList<EntityContainer>(); EntityContainer entityContainer = new EntityContainer(); entityContainer.setName(ENTITY_CONTAINER).setDefaultEntityContainer(true); List<EntitySet> entitySets = new ArrayList<EntitySet>(); entitySets.add(getEntitySet(ENTITY_CONTAINER, ENTITY_SET_NAME_CARS)); entitySets.add(getEntitySet(ENTITY_CONTAINER, ENTITY_SET_NAME_MANUFACTURERS)); entityContainer.setEntitySets(entitySets); List<AssociationSet> associationSets = new ArrayList<AssociationSet>(); associationSets.add(getAssociationSet(ENTITY_CONTAINER, ASSOCIATION_CAR_MANUFACTURER, ENTITY_SET_NAME_MANUFACTURERS, ROLE_1_2)); entityContainer.setAssociationSets(associationSets); List<FunctionImport> functionImports = new ArrayList<FunctionImport>(); functionImports.add(getFunctionImport(ENTITY_CONTAINER, FUNCTION_IMPORT)); entityContainer.setFunctionImports(functionImports); entityContainers.add(entityContainer); schema.setEntityContainers(entityContainers); schemas.add(schema); return schemas; }
Example 6
Source File: MyEdmProvider.java From wildfly-camel with Apache License 2.0 | 4 votes |
@Override public List<Schema> getSchemas() throws ODataException { List<Schema> schemas = new ArrayList<>(); Schema schema = new Schema(); schema.setNamespace(NAMESPACE); List<EntityType> entityTypes = new ArrayList<>(); entityTypes.add(getEntityType(ENTITY_TYPE_1_1)); entityTypes.add(getEntityType(ENTITY_TYPE_1_2)); schema.setEntityTypes(entityTypes); List<ComplexType> complexTypes = new ArrayList<>(); complexTypes.add(getComplexType(COMPLEX_TYPE)); schema.setComplexTypes(complexTypes); List<Association> associations = new ArrayList<>(); associations.add(getAssociation(ASSOCIATION_CAR_MANUFACTURER)); schema.setAssociations(associations); List<EntityContainer> entityContainers = new ArrayList<>(); EntityContainer entityContainer = new EntityContainer(); entityContainer.setName(ENTITY_CONTAINER).setDefaultEntityContainer(true); List<EntitySet> entitySets = new ArrayList<>(); entitySets.add(getEntitySet(ENTITY_CONTAINER, ENTITY_SET_NAME_CARS)); entitySets.add(getEntitySet(ENTITY_CONTAINER, ENTITY_SET_NAME_MANUFACTURERS)); entityContainer.setEntitySets(entitySets); List<AssociationSet> associationSets = new ArrayList<>(); associationSets.add(getAssociationSet(ENTITY_CONTAINER, ASSOCIATION_CAR_MANUFACTURER, ENTITY_SET_NAME_MANUFACTURERS, ROLE_1_2)); entityContainer.setAssociationSets(associationSets); List<FunctionImport> functionImports = new ArrayList<>(); functionImports.add(getFunctionImport(ENTITY_CONTAINER, FUNCTION_IMPORT)); entityContainer.setFunctionImports(functionImports); entityContainers.add(entityContainer); schema.setEntityContainers(entityContainers); schemas.add(schema); return schemas; }