Package org.apache.jdo.model.jdo

Examples of org.apache.jdo.model.jdo.JDOClass


     * instance.
     * @param name the name of the inner class
     * @exception ModelException if impossible
     */
    public JDOClass createJDOClass(String name) throws ModelException {
        JDOClass innerClass = (JDOClass)declaredClasses.get(name);
        if (innerClass == null) {
            innerClass = newJDOClassInstance(name);
            declaredClasses.put(name, innerClass);
        }
        return innerClass;
View Full Code Here


     * @return the managed fields of this JDOClass
     */
    public JDOField[] getManagedFields() {
        JDOField[] fields = null;
        JDOField[] declared = getDeclaredManagedFields();
        JDOClass superclass = getPersistenceCapableSuperclass();
        if (superclass == null) {
            // no pc superclass
            fields = declared;
        }
        else {
            // pc superclass
            JDOField[] inherited = superclass.getManagedFields();
            fields = new JDOField[inherited.length+declared.length];
            System.arraycopy(inherited, 0, fields, 0, inherited.length);
            System.arraycopy(declared, 0, fields,
                             inherited.length, declared.length);
        }
View Full Code Here

        if (prop != null) {
            return prop;
        }
       
        // not in this class => check superclass
        JDOClass superclass = getPersistenceCapableSuperclass();
        if (superclass != null) {
            return superclass.getAssociatedProperty(name);
        }
       
        // not found => return null
        return null;
    }
View Full Code Here

     * represented by this JDOClass.
     * @return number of inherited managed fields
     */
    public int getInheritedManagedFieldCount() {
        int count = 0;
        JDOClass superclass = getPersistenceCapableSuperclass();
        if (superclass != null) {
            count =
                superclass.getInheritedManagedFieldCount() +
                superclass.getDeclaredManagedFieldCount();
        }
   
        return count;
    }
View Full Code Here

     * hierarchy of this JDOClass. It returns this JDOClass if it has no
     * persistence-capable superclass.
     * @return the topmost persistence-capable class in the hierarchy.
     */
    public JDOClass getPersistenceCapableRootClass() {
        JDOClass superclass = getPersistenceCapableSuperclass();
        if (superclass == null) {
            // no superclass => return this
            return this;
        }
        else {
            return superclass.getPersistenceCapableRootClass();
        }
    }
View Full Code Here

   
        // not set => calculate
        JavaType type = null;
        if (keyTypeName != null) {
            JDOField jdoField = getDeclaringField();
            JDOClass jdoClass = jdoField.getDeclaringClass();
            JDOModel jdoModel = jdoClass.getDeclaringModel();
            type = TypeSupport.resolveType(jdoModel, keyTypeName,
                                           jdoClass.getPackagePrefix());
            if (type == null) {
                throw new ModelFatalException(
                    msg.msg("EXC_CannotResolveKeyType", keyTypeName, //NOI18N
                            jdoField.getName(), jdoClass.getName()));
            }
        }
       
        return type;
    }
View Full Code Here

   
        // not set => calculate
        JavaType type = null;
        if (valueTypeName != null) {
            JDOField jdoField = getDeclaringField();
            JDOClass jdoClass = jdoField.getDeclaringClass();
            JDOModel jdoModel = jdoClass.getDeclaringModel();
            type = TypeSupport.resolveType(jdoModel, valueTypeName,
                                           jdoClass.getPackagePrefix());
            if (type == null) {
                throw new ModelFatalException(
                    msg.msg("EXC_CannotResolveValueType", valueTypeName, //NOI18N
                            jdoField.getName(), jdoClass.getName()));
            }
        }
       
        return type;
    }
View Full Code Here

        throws SAXException
    {
        boolean trace = logger.isTraceEnabled();
        if (trace)
            logger.trace("  <class>"); //NOI18N
        JDOClass jdoClass = null;
        try {
            // get JDOPackage from context stack
            //String packageName = (String)context.peek();
            JDOPackage jdoPackage = (JDOPackage)context.peek();
            String packageName = jdoPackage.getName();
            String className = meta.getValue("", "name"); //NOI18N
            if ((packageName != null) && (packageName.length() > 0))
                className = packageName + "." + className; //NOI18N
            jdoClass = model.createJDOClass(className, false);
            skipXMLElements = jdoClass.isXMLMetadataLoaded();
            if (skipXMLElements) {
                if (trace)
                    logger.trace(
                        "  JDO metadata already loaded for class " + //NOI18N
                        className + ", skipping class element"); //NOI18N
                return;
            }
            for ( int i = 0; i < meta.getLength(); i++ ) {
                String name = meta.getLocalName(i);
                String value = meta.getValue(i);
                if (trace)
                    logger.trace("    " + name + " = " + value); //NOI18N
                if ("name".equals(name)) { //NOI18N
                    // name is already set during create => do nothing
                }
                else if ("identity-type".equals(name)) { //NOI18N
                    jdoClass.setIdentityType(
                        JDOIdentityType.toJDOIdentityType(value));
                }
                else if ("objectid-class".equals(name)) { //NOI18N
                    jdoClass.setDeclaredObjectIdClassName(value);
                }
                else if ("requires-extent".equals(name)) { //NOI18N
                    jdoClass.setRequiresExtent(
                        Boolean.valueOf(value).booleanValue());
                }
                else if ("persistence-capable-superclass".equals(name)) { //NOI18N
                    // Do not overwrite existing entry
                    // TBD check old and new entry for consistency
                    if (jdoClass.getPersistenceCapableSuperclassName() == null) {
                        jdoClass.setPersistenceCapableSuperclassName(value);
                    }
                }
                else {
                    /* JDO2 metadata not yet fully supported =>
                       do not throw exception now
View Full Code Here

            // set flag to false to allow next class entry to be populated
            skipXMLElements = false;
        }
        else {
            // remove JDOClass fom context stack
            JDOClass jdoClass = (JDOClass)context.pop();
            // set jdoClass' xmlMetadataLoaded flag
            jdoClass.setXMLMetadataLoaded();
        }
    }
View Full Code Here

        if (trace)
            logger.trace("  <field>"); //NOI18N
        JDOField jdoField = null;
        try {
            // get the current JDOClass from context stack
            JDOClass jdoClass = (JDOClass)context.peek();
            String fieldName = meta.getValue("", "name"); //NOI18N
            jdoField =  jdoClass.createJDOField(fieldName);
            for (int i = 0; i < meta.getLength(); i++ ) {
                String name = meta.getLocalName(i);
                String value = meta.getValue(i);
                if (trace)
                    logger.trace("    " + name + " = " + value); //NOI18N
View Full Code Here

TOP

Related Classes of org.apache.jdo.model.jdo.JDOClass

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.