/** * INTERNAL: * Convert a DatabaseField to an XMLField */ protected XMLField convertToXMLField(DatabaseField databaseField) { try { return (XMLField)databaseField; } catch (ClassCastException ex) { return new XMLField(databaseField.getName()); } }
/** * Set the Mapping field name attribute to the given XPath String * @param xpathString String */ public void setXPath(String xpathString) { if ((xpathString.indexOf(XMLConstants.ATTRIBUTE) == -1) && (!xpathString.endsWith(XMLConstants.TEXT))) { xpathString += '/' + XMLConstants.TEXT; } setField(new XMLField(xpathString)); } public void initialize(AbstractSession session) throws DescriptorException {
/** * Set the Mapping field name attribute to the given XPath String * @param xpathString String */ public void setXPath(String xpathString) { setField(new XMLField(xpathString)); }
/** * Set the Mapping field name attribute to the given XPath String * * @param xpathString String * */ public void setXPath(String xpathString) { this.setField(new XMLField(xpathString)); }
/** * PUBLIC: * Add the field-value pair to the row. */ @Override public Object get(String key) { return get(new XMLField(key)); }
/** * PUBLIC: * Add the field-value pair to the row. */ @Override public Object put(String key, Object value) { return put(new XMLField(key), value); }
/** * Set the Mapping field name attribute to the given XPath String * * @param xpathString String * */ public void setXPath(String xpathString) { this.setField(new XMLField(xpathString)); }
/** * Set the Mapping field name attribute to the given XPath String * @param xpathString String */ public void setXPath(String xpathString) { setField(new XMLField(xpathString)); }
@Override public void addPrimaryKeyField(DatabaseField field) { if (!(field instanceof XMLField)) { String fieldName = field.getName(); field = new XMLField(fieldName); } if(null == primaryKeyFields) { primaryKeyFields = new ArrayList<DatabaseField>(1); } super.addPrimaryKeyField(field); }
/** * INTERNAL: * A DatabaseField is built from the given field name. */ public DatabaseField buildField(String fieldName) { XMLField xmlField = new XMLField(fieldName); xmlField.setNamespaceResolver(this.getNamespaceResolver()); //xmlField.initialize(); return xmlField; }
/** * PUBLIC: * To set the class indicator field name. * This is the name of the field in the table that stores what type of object this is. */ public void setClassIndicatorFieldName(String fieldName) { if (fieldName == null) { setClassIndicatorField(null); } else { setClassIndicatorField(new XMLField(fieldName)); } }
protected XMLField buildTypedField(String fieldName) { XMLField field = new XMLField(fieldName); field.setIsTypedTextField(true); field.addConversion(new QName(XMLConstants.SCHEMA_URL, XMLConstants.TIME), java.sql.Time.class); field.addConversion(new QName(XMLConstants.SCHEMA_URL, XMLConstants.DATE), java.sql.Date.class); field.addConversion(new QName(getPrimaryNamespace(), "java-character"), Character.class); field.addConversion(new QName(getPrimaryNamespace(), "java-util-date"), java.util.Date.class); field.addConversion(new QName(getPrimaryNamespace(), "java-timestamp"), java.sql.Timestamp.class); return field; } }
protected ClassDescriptor buildNodeOrderingPolicyConfigDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(NodeOrderingPolicyConfig.class); descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("@xsi:type")); descriptor.getInheritancePolicy().addClassIndicator(AppendNewElementsOrderingPolicyConfig.class, "append-new-elements-ordering-policy"); descriptor.getInheritancePolicy().addClassIndicator(IgnoreNewElementsOrderingPolicyConfig.class, "ignore-new-elements-ordering-policy"); descriptor.getInheritancePolicy().addClassIndicator(RelativePositionOrderingPolicyConfig.class, "relative-position-ordering-policy"); return descriptor; }
public ClassDescriptor buildLogConfigDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(LogConfig.class); descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("@xsi:type")); descriptor.getInheritancePolicy().addClassIndicator(DefaultSessionLogConfig.class, "eclipselink-log"); descriptor.getInheritancePolicy().addClassIndicator(JavaLogConfig.class, "java-log"); descriptor.getInheritancePolicy().addClassIndicator(ServerLogConfig.class, "server-log"); return descriptor; }
protected ClassDescriptor buildCallDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(Call.class); descriptor.setDefaultRootElement("call"); descriptor.descriptorIsAggregate(); descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("@xsi:type")); descriptor.getInheritancePolicy().addClassIndicator(SQLCall.class, getPrimaryNamespaceXPath() + "sql-call"); descriptor.getInheritancePolicy().addClassIndicator(JPQLCall.class, getPrimaryNamespaceXPath() + "ejbql-call"); return descriptor; }
protected ClassDescriptor buildContainerPolicyDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(ContainerPolicy.class); descriptor.setDefaultRootElement("container-policy"); descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("@xsi:type")); descriptor.getInheritancePolicy().addClassIndicator(CollectionContainerPolicy.class, getPrimaryNamespaceXPath() + "container-policy"); descriptor.getInheritancePolicy().addClassIndicator(ListContainerPolicy.class, getPrimaryNamespaceXPath() + "list-container-policy"); descriptor.getInheritancePolicy().addClassIndicator(MapContainerPolicy.class, getPrimaryNamespaceXPath() + "map-container-policy"); descriptor.getInheritancePolicy().addClassIndicator(MappedKeyMapContainerPolicy.class, getPrimaryNamespaceXPath() + "direct-map-container-policy"); return descriptor; }
protected ClassDescriptor buildOptimisticLockingPolicyDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(OptimisticLockingPolicy.class); descriptor.setDefaultRootElement("locking-policy"); descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("@xsi:type")); descriptor.getInheritancePolicy().addClassIndicator(VersionLockingPolicy.class, getPrimaryNamespaceXPath() + "version-locking-policy"); descriptor.getInheritancePolicy().addClassIndicator(TimestampLockingPolicy.class, getPrimaryNamespaceXPath() + "timestamp-locking-policy"); descriptor.getInheritancePolicy().addClassIndicator(SelectedFieldsLockingPolicy.class, getPrimaryNamespaceXPath() + "selected-fields-locking-policy"); descriptor.getInheritancePolicy().addClassIndicator(ChangedFieldsLockingPolicy.class, getPrimaryNamespaceXPath() + "changed-fields-locking-policy"); descriptor.getInheritancePolicy().addClassIndicator(AllFieldsLockingPolicy.class, getPrimaryNamespaceXPath() + "all-fields-locking-policy"); return descriptor; }