@Override Builder newBuilder(EdmAssociationEnd associationEnd, BuilderContext context) { this.role = associationEnd.role; this.type = EdmEntityType.newBuilder(associationEnd.getType(), context); this.multiplicity = associationEnd.multiplicity; this.onDeleteAction = associationEnd.onDeleteAction; return this; }
public String getFQBaseTypeName() { return baseTypeNameFQ != null ? baseTypeNameFQ : (baseType != null ? baseType.getFullyQualifiedTypeName() : null); }
/** * Gets the keys for this EdmEntityType. Keys are defined only in a root types. */ public List<String> getKeys() { return isRootType() ? keys : getBaseType().getKeys(); }
/** * Gets the navigation properties defined for this entity type <i>including</i> inherited properties. */ public Enumerable<EdmNavigationProperty> getNavigationProperties() { return isRootType() ? getDeclaredNavigationProperties() : getBaseType().getNavigationProperties().union(getDeclaredNavigationProperties()); }
@Override public String toString() { return String.format("EdmEntityType[%s.%s,alias=%s]", getNamespace(), getName(), alias); }
if (eet.getOpenType() != null) { writer.writeAttribute("OpenType", eet.getOpenType().toString()); writer.writeAttribute("Name", eet.getName()); if (eet.getIsAbstract() != null) { writer.writeAttribute("Abstract", eet.getIsAbstract().toString()); if (Boolean.TRUE.equals(eet.getHasStream())) { writer.writeAttribute(new QName2(m, "HasStream", "m"), "true"); if (eet.isRootType()) { writeAnnotationAttributes(eet, writer); writeDocumentation(eet, writer); writer.startElement(new QName2("Key")); for (String key : eet.getKeys()) { writer.startElement(new QName2("PropertyRef")); writer.writeAttribute("Name", key); writer.writeAttribute("BaseType", eet.getBaseType().getFullyQualifiedTypeName()); writeAnnotationAttributes(eet, writer); writeDocumentation(eet, writer); writeProperties(eet.getDeclaredProperties(), writer); for (EdmNavigationProperty np : eet.getDeclaredNavigationProperties()) { writer.writeAttribute("BaseType", ect.getBaseType().getFullyQualifiedTypeName()); writer.writeAttribute("Type", assoc.getEnd1().getType().getFullyQualifiedTypeName());
String ets = String.format(" EntityType Name=%s", et.getName()); if (et.getHasStream() != null) ets = ets + " HasStream=" + et.getHasStream(); report(ets); for (String key : et.getKeys()) { report(" Key PropertyRef Name=%s", key); reportProperties(et.getDeclaredProperties()); for (EdmNavigationProperty np : et.getDeclaredNavigationProperties()) { report(" NavigationProperty Name=%s Relationship=%s FromRole=%s ToRole=%s", np.getName(), np.getRelationship().getFQNamespaceName(), np.getFromRole().getRole(), np.getToRole().getRole()); report(" End Role=%s Type=%s Multiplicity=%s", assoc.getEnd1().getRole(), assoc.getEnd1().getType().getFullyQualifiedTypeName(), assoc.getEnd1().getMultiplicity()); report(" End Role=%s Type=%s Multiplicity=%s", assoc.getEnd2().getRole(), assoc.getEnd2().getType().getFullyQualifiedTypeName(), assoc.getEnd2().getMultiplicity()); report(" EntitySet Name=%s EntityType=%s", ees.getName(), ees.getType().getFullyQualifiedTypeName());
static EdmEntitySet removeModelName(EdmEntitySet src) { EdmEntityType srcType = src.getType(); String schemaName = srcType.getName().substring(0, srcType.getName().indexOf('.')); String name = srcType.getName().substring(srcType.getName().indexOf('.')+1); EdmEntityType.Builder targetType = EdmEntityType .newBuilder().setName(name) .setNamespace(schemaName); targetType.addKeys(srcType.getKeys()); Enumerable<EdmProperty> properties = srcType.getProperties(); for (EdmProperty srcProperty:properties.toList()) { EdmProperty.Builder tgtProperty = EdmProperty.newBuilder(srcProperty.getName()) .setType(srcProperty.getType()) .setNullable(srcProperty.isNullable()) .setFixedLength(srcProperty.getFixedLength()) .setMaxLength(srcProperty.getMaxLength()) .setUnicode(true); targetType.addProperties(tgtProperty); } EdmEntitySet.Builder target = EdmEntitySet.newBuilder() .setName(src.getName()) .setEntityType(targetType); return target.build(); } }
protected Table addEntitySetAsTable(MetadataFactory mf, EdmEntitySet entitySet) throws TranslatorException { Table table = buildTable(mf, entitySet); table.setProperty(ENTITY_TYPE, entitySet.getType().getFullyQualifiedTypeName()); for (EdmProperty ep:entitySet.getType().getProperties().toList()) { if (ep.getType().isSimple() || (ep.getType() instanceof EdmCollectionType mf.addPrimaryKey("PK", entitySet.getType().getKeys(), table); //$NON-NLS-1$ return table;
@Override Builder newBuilder(EdmEntityType entityType, BuilderContext context) { fillBuilder(entityType, context); context.register(entityType, this); this.alias = entityType.alias; this.hasStream = entityType.hasStream; this.openType = entityType.openType; if (entityType.keys != null) { // subtypes don't have keys! this.keys.addAll(entityType.keys); } if (entityType.getBaseType() != null) { baseTypeBuilder = EdmEntityType.newBuilder(entityType.getBaseType(), context); } for (EdmNavigationProperty navigationProperty : entityType.navigationProperties) this.navigationProperties.add(EdmNavigationProperty.newBuilder(navigationProperty, context)); return this; }
if (eet == null) throw new IllegalArgumentException("EdmEntityType cannot be null"); List<String> keys = eet.getKeys(); if (keys.size() == 0) { String idProp = Enumerable.create(eet.getProperties()) .select(OFuncs.name(EdmProperty.class)) .firstOrNull(OPredicates.equalsIgnoreCase("id"));
for (EdmProperty ep : ees.getType().getProperties()) { if (hasEmbeddedCompositeKey && ees.getType().getKeys().contains(ep.getName())) { Object value = SetResponseCommand.getIdValue(jpaEntity, idAtt, ep.getName()); for (final EdmNavigationProperty ep : ees.getType().getNavigationProperties()) { if (JPAProducer.isSelected(ep.getName(), select)) { boolean expanded = Enumerable.create(links).any(new Predicate1<OLink>() {
public String getFQAliasName() { return alias == null ? null : (alias + "." + getName()); }
props.add(OProperties.string(Edm.StructuralType.BaseType, st.getBaseType().getFullyQualifiedTypeName())); EdmComplexType entityKeyType = edm.findEdmComplexType(Edm.EntityKey.fqName()); Builder<OComplexObject> builder = OCollections.newBuilder(propRefType); for (String key : ((EdmEntityType) st).getKeys()) { List<OProperty<?>> refProps = new ArrayList<OProperty<?>>(); refProps.add(OProperties.string(Edm.PropertyRef.Name, key));
writeElement(writer, "link", null, "rel", "edit", "title", ees.getType().getName(), "href", relid); "term", oe == null ? ees.getType().getFullyQualifiedTypeName() : oe.getEntityType().getFullyQualifiedTypeName(), "scheme", scheme);
public EdmPropertyBase findEdmProperty(String propName) { for (EdmSchema schema : this.schemas) { for (EdmEntityContainer eec : schema.getEntityContainers()) { for (EdmEntitySet ees : eec.getEntitySets()) { for (EdmNavigationProperty ep : ees.getType().getNavigationProperties()) { if (ep.getName().equals(propName)) { return ep; } } for (final EdmProperty ep : ees.getType().getProperties()) { if (ep.getName().equals(propName)) { return ep; } } } } } return null; }
EdmProperty ep = entry.getEntityType().findProperty(name); if (ep == null) { EdmNavigationProperty navProp = entry.getEntityType().findNavigationProperty(name); if (navProp != null) { throw new IllegalArgumentException("unknown property " + name + " for " + entry.getEntityType().getName()); EdmNavigationProperty navProp = entry.getEntityType().findNavigationProperty(name); if (navProp.getToRole().getMultiplicity() == EdmMultiplicity.MANY) { entry.links.add(OLinks.relatedEntities(name, name, val.uri)); throw new IllegalArgumentException("arrays of primitive types not supported! property " + entry.getEntityType().getName() + "." + name); } else if (event.isStartObject()) { EdmNavigationProperty navProp = entry.getEntityType().findNavigationProperty(name); ees = metadata.getEdmEntitySet(navProp.getToRole().getType()); List<OEntity> entities = new ArrayList<OEntity>();
protected OEntity toOEntity(JdbcMetadataMapping mapping, EdmEntitySet entitySet, ResultSet results) throws SQLException { List<OProperty<?>> properties = new ArrayList<OProperty<?>>(); for (EdmProperty edmProperty : entitySet.getType().getProperties()) { JdbcColumn column = mapping.getMappedColumn(edmProperty); Object value = results.getObject(column.columnName); OProperty<?> property = OProperties.simple(edmProperty.getName(), value); properties.add(property); } OEntityKey entityKey = OEntityKey.infer(entitySet, properties); return OEntities.create(entitySet, entityKey, properties, Collections.<OLink> emptyList()); }
/** * Finds a navigation property by name, searching up the type hierarchy if necessary. */ public EdmNavigationProperty findNavigationProperty(String name) { return getNavigationProperties().firstOrNull(OPredicates.nameEquals(EdmNavigationProperty.class, name)); }
@Override public boolean apply(EdmEntitySet input) { return type.equals(input.getType()); } });