Examples of JavaClass


Examples of com.thoughtworks.qdox.model.JavaClass

            m_checkedSource = true;
            IClass clas = getContainingClass();
            IClassLocator loc = clas.getLocator();
            if (loc instanceof IClassSourceLocator) {
                IClassSourceLocator sloc = (IClassSourceLocator)loc;
                JavaClass jc = sloc.getSourceInfo(clas.getName());
                if (jc != null) {
                    if (isMethod()) {
                        String mname = getName();
                        JavaMethod[] methods = jc.getMethods();
                        for (int i = 0; i < methods.length; i++) {
                            JavaMethod method = methods[i];
                            if (mname.equals(method.getName())) {
                                if (matchSignature(method)) {
                                    m_itemSource = method;
                                    break;
                                }
                            }
                        }
                    } else {
                        m_itemSource = jc.getFieldByName(getName());
                    }
                }
            }
        }
        return m_itemSource;
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

            return left != null ? left.getRelTag() : null;
        }

        public void swap() {
            RelationEntryHolder t1 = left;
            JavaClass t2 = leftBean;
            left = right;
            leftBean = rightBean;
            right = t1;
            rightBean = t2;
        }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

        JavaClass[] expandedClasses = expandClass(metadata_);

        List retLst = new ArrayList();

        for (int i = 0; i < expandedClasses.length; i++) {
            JavaClass metadata = expandedClasses[i];
            if (!shouldGenerate(metadata)) {
                continue;
            }
            ValueObjectMetadata metaVo = getMetaVO(metadata);
            BeanProperty pkProperty = metaVo.getPkProperty();

            JavaField field;
            JavaMethod method;
            JavaClass retVal = createDynamicJavaClass(getDestinationClassname(metadata), getDestinationPackage(metadata), null, getMetadataProvider());
            String[] modifiers = new String[isAbstract(metadata) ? 2 : 1];
            modifiers[0] = "public";
            if (isAbstract(metadata)) {
                modifiers[1] = "abstract";
            }
            retVal.setModifiers(modifiers);
            retVal.setSuperClass(new Type(getExtends(metadata)));

            String[] implementz = getImplements(metadata);
            Type[] implementzTypes = new Type[implementz.length];
            for (int j = 0; j < implementz.length; j++) {
                implementzTypes[j] = new Type(implementz[j]);
            }
            retVal.setImplementz(implementzTypes);

            if (getEjbUtils().isUseSoftLocking(metadata)) {
                field = new JavaField(new Type("int"), "_version");
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
            }

            ValueObjectFieldMetadata[] nonPkFields = metaVo.getNonPkFields();
            for (int j = 0; j < nonPkFields.length; j++) {
                ValueObjectFieldMetadata vField = nonPkFields[j];
                field = new JavaField(vField.getProperty().getType(), vField.getProperty().getName());
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
                field = new JavaField(new Type("boolean"), vField.getProperty().getName()+"HasBeenSet");
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
            }

            ValueObjectFieldMetadata[] pkFields = metaVo.getPkFields();
            for (int j = 0; j < pkFields.length; j++) {
                ValueObjectFieldMetadata vField = pkFields[j];
                field = new JavaField(vField.getProperty().getType(), vField.getProperty().getName());
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
                field = new JavaField(new Type("boolean"), vField.getProperty().getName()+"HasBeenSet");
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
            }

            ValueObjectRelationMetadata[] nonCollectionRel = metaVo.getNonCollectionRelations();
            for (int j = 0; j < nonCollectionRel.length; j++) {
                ValueObjectRelationMetadata vRelation = nonCollectionRel[j];
                field = new JavaField(vRelation.getProperty().getType(), vRelation.getProperty().getName());
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
                field = new JavaField(new Type("boolean"), vRelation.getProperty().getName()+"HasBeenSet");
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
            }
            ValueObjectRelationMetadata[] collectionRel = metaVo.getCollectionRelations();
            for (int j = 0; j < collectionRel.length; j++) {
                ValueObjectRelationMetadata vRelation = collectionRel[j];
                field = new JavaField(vRelation.getProperty().getType(), vRelation.getProperty().getName());
                field.setModifiers(new String[] { "private" });
                retVal.addField(field);
            }

            method = new JavaMethod(getDestinationClassname(metadata));
            method.setConstructor(true);
            method.setModifiers(new String[] { "public" });
            retVal.addMethod(method);

            if (metaVo.isGeneratePKConstructor() && metaVo.hasPk()) {
                if(!isEmpty(nonPkFields) || !metaVo.isSimplePkProperty()) {
                    method = new JavaMethod(getDestinationClassname(metadata));
                    method.setConstructor(true);
                    method.setModifiers(new String[] { "public" });
                    method.setParameters(new JavaParameter[]{new JavaParameter(pkProperty.getType(), pkProperty.getName())});
                    retVal.addMethod(method);
                }
                if(!isEmpty(nonPkFields) && !metaVo.isSimplePkProperty()) {
                    method = new JavaMethod(getDestinationClassname(metadata));
                    method.setConstructor(true);
                    method.setModifiers(new String[] { "public" });
                    JavaParameter[] params = new JavaParameter[nonPkFields.length + 1];
                    params[0] = new JavaParameter(pkProperty.getType(), pkProperty.getName());
                    for (int j = 0; j < nonPkFields.length; j++) {
                        ValueObjectFieldMetadata nonPkField = nonPkFields[j];
                        params[j+1] = new JavaParameter(nonPkField.getProperty().getType(), nonPkField.getProperty().getName());
                    }
                    method.setParameters(params);
                    retVal.addMethod(method);
                }
            }

            ValueObjectFieldMetadata[] fields = metaVo.getFields();
            if (!isEmpty(fields)) {
                method = new JavaMethod(getDestinationClassname(metadata));
                method.setConstructor(true);
                method.setModifiers(new String[] { "public" });
                JavaParameter[] params = new JavaParameter[fields.length];
                for (int j = 0; j < fields.length; j++) {
                    ValueObjectFieldMetadata vField = fields[j];
                    params[j] = new JavaParameter(vField.getProperty().getType(), vField.getProperty().getName());
                }
                method.setParameters(params);
                retVal.addMethod(method);
            }

            if (metaVo.hasPk() && !metaVo.isSimplePkProperty()) {
                method = new JavaMethod(pkProperty.getType(), pkProperty.getAccessor().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod(pkProperty.getMutator().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(pkProperty.getType(), pkProperty.getName())});
                retVal.addMethod(method);
            }

            if (getEjbUtils().isUseSoftLocking(metadata)) {
                method = new JavaMethod(new Type("int"), "getVersion");
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod("setVersion");
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type("int"), "version")});
                retVal.addMethod(method);
            }

            for (int j = 0; (fields != null) && (j < fields.length); j++) {
                ValueObjectFieldMetadata vField = fields[j];
                method = new JavaMethod(vField.getProperty().getType(), vField.getProperty().getAccessor().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod(vField.getProperty().getMutator().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(vField.getProperty().getType(), vField.getProperty().getName())});
                retVal.addMethod(method);

                method = new JavaMethod(new Type("boolean"), vField.getProperty().getName()+"HasBeenSet");
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);
            }

            for (int k = 0; k < nonCollectionRel.length; k++) {
                ValueObjectRelationMetadata nonColRel = nonCollectionRel[k];

                method = new JavaMethod(nonColRel.getProperty().getType(), nonColRel.getProperty().getAccessor().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod(nonColRel.getProperty().getMutator().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(nonColRel.getProperty().getType(), nonColRel.getProperty().getName())});
                retVal.addMethod(method);

                method = new JavaMethod(new Type("boolean"), nonColRel.getProperty().getName()+"HasBeenSet");
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);
            }

            for (int k = 0; k < collectionRel.length; k++) {
                ValueObjectRelationMetadata colRel = collectionRel[k];

                field = new JavaField(colRel.getProperty().getType(), "added" + colRel.getProperty().getName());
                field.setModifiers(new String[]{"protected"});
                retVal.addField(field);
                field = new JavaField(colRel.getProperty().getType(), "onceAdded" + colRel.getProperty().getName());
                field.setModifiers(new String[]{"protected"});
                retVal.addField(field);
                field = new JavaField(colRel.getProperty().getType(), "removed" + colRel.getProperty().getName());
                field.setModifiers(new String[]{"protected"});
                retVal.addField(field);
                field = new JavaField(colRel.getProperty().getType(), "updated" + colRel.getProperty().getName());
                field.setModifiers(new String[]{"protected"});
                retVal.addField(field);

                method = new JavaMethod(colRel.getProperty().getType(), "getAdded" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                retVal.addMethod(method);
                method = new JavaMethod(colRel.getProperty().getType(), "getOnceAdded" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                retVal.addMethod(method);
                method = new JavaMethod(colRel.getProperty().getType(), "getRemoved" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                retVal.addMethod(method);
                method = new JavaMethod(colRel.getProperty().getType(), "getUpdated" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                retVal.addMethod(method);

                method = new JavaMethod(colRel.getProperty().getType(), colRel.getProperty().getAccessor().getName()+"Collection");
                method.setModifiers(new String[]{"public"});
                retVal.addMethod(method);

                method = new JavaMethod(new Type(colRel.getAggregate(),1), colRel.getProperty().getAccessor().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod(colRel.getProperty().getMutator().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type(colRel.getAggregate(),1), colRel.getProperty().getName())});
                retVal.addMethod(method);

                method = new JavaMethod("clear"+colRel.getProperty().getName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod("add"+colRel.getAggregateName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type(colRel.getAggregate()), "other")});
                retVal.addMethod(method);

                method = new JavaMethod("remove"+colRel.getAggregateName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type(colRel.getAggregate()), "other")});
                retVal.addMethod(method);

                method = new JavaMethod("update"+colRel.getAggregateName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type(colRel.getAggregate()), "other")});
                retVal.addMethod(method);

                method = new JavaMethod("clean"+colRel.getAggregateName());
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                retVal.addMethod(method);

                method = new JavaMethod("copy"+colRel.getProperty().getName()+"From");
                modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
                modifiers[0] = "public";
                if (metaVo.isFullSynchronization()) {
                    modifiers[1] = "synchronized";
                }
                method.setModifiers(modifiers);
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type(getDestinationFullyQualifiedClassName(metadata)), "other")});
                retVal.addMethod(method);
            }

            method = new JavaMethod(new Type("java.lang.String"), "toString");
            modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
            modifiers[0] = "public";
            if (metaVo.isFullSynchronization()) {
                modifiers[1] = "synchronized";
            }
            method.setModifiers(modifiers);
            retVal.addMethod(method);

            method = new JavaMethod(new Type("boolean"), "hasIdentity");
            modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
            modifiers[0] = "protected";
            if (metaVo.isFullSynchronization()) {
                modifiers[1] = "synchronized";
            }
            method.setModifiers(modifiers);
            retVal.addMethod(method);

            method = new JavaMethod(new Type("boolean"), "equals");
            method.setModifiers(new String[]{"public"});
            method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.lang.Object"), "other")});
            retVal.addMethod(method);

            if (metaVo.isStrictOrdering()) {
                method = new JavaMethod(new Type("int"), "compareTo");
                method.setModifiers(new String[]{"public"});
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.lang.Object"), "other")});
                retVal.addMethod(method);
            }

            method = new JavaMethod(new Type("java.lang.Object"), "clone");
            modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
            modifiers[0] = "public";
            if (metaVo.isFullSynchronization()) {
                modifiers[1] = "synchronized";
            }
            method.setModifiers(modifiers);
            retVal.addMethod(method);

            method = new JavaMethod(new Type("int"), "hashCode");
            modifiers = new String[metaVo.isFullSynchronization() ? 2 : 1];
            modifiers[0] = "public";
            if (metaVo.isFullSynchronization()) {
                modifiers[1] = "synchronized";
            }
            method.setModifiers(modifiers);
            retVal.addMethod(method);

            JavaClass innerClass = createDynamicJavaClass("ReadOnly" + getDestinationClassname(metadata), getDestinationPackage(metadata), null, getMetadataProvider());
            innerClass.setModifiers(new String[]{"final","private"});
            retVal.addClass(innerClass);

            method = new JavaMethod(innerClass.asType(), "getReadOnly"+getDestinationClassname(metadata));
            method.setModifiers(new String[]{"public"});
            retVal.addMethod(method);

            method = new JavaMethod(new Type("java.util.Collection"), "wrapCollection");
            method.setModifiers(new String[]{"private", "static"});
            method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.util.Collection"), "input")});
            retVal.addMethod(method);

            method = new JavaMethod(new Type("java.util.Set"), "wrapCollection");
            method.setModifiers(new String[]{"private", "static"});
            method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.util.Set"), "input")});
            retVal.addMethod(method);

            method = new JavaMethod(new Type("java.util.Collection"), "wrapReadOnly");
            method.setModifiers(new String[]{"private", "static"});
            method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.util.Collection"), "input")});
            retVal.addMethod(method);

            method = new JavaMethod(new Type("java.util.Set"), "wrapReadOnly");
            method.setModifiers(new String[]{"private", "static"});
            method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.util.Set"), "input")});
            retVal.addMethod(method);

            // handle inner class

            implementz = getImplements(metadata);
            implementzTypes = new Type[implementz.length];
            for (int j = 0; j < implementz.length; j++) {
                implementzTypes[j] = new Type(implementz[j]);
            }
            innerClass.setImplementz(implementzTypes);

            method = new JavaMethod(retVal.asType(), "underlying");
            method.setModifiers(new String[]{"private"});
            innerClass.addMethod(method);

            for (int j = 0; (fields != null) && (j < fields.length); j++) {
                ValueObjectFieldMetadata vField = fields[j];
                method = new JavaMethod(vField.getProperty().getType(), vField.getProperty().getAccessor().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);

                method = new JavaMethod(new Type("boolean"), vField.getProperty().getName()+"HasBeenSet");
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);
            }

            for (int k = 0; k < nonCollectionRel.length; k++) {
                ValueObjectRelationMetadata nonColRel = nonCollectionRel[k];

                method = new JavaMethod(nonColRel.getProperty().getType(), nonColRel.getProperty().getAccessor().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);

                method = new JavaMethod(new Type("boolean"), nonColRel.getProperty().getName()+"HasBeenSet");
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);
            }

            for (int k = 0; k < collectionRel.length; k++) {
                ValueObjectRelationMetadata colRel = collectionRel[k];

                method = new JavaMethod(colRel.getProperty().getType(), "getAdded" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);
                method = new JavaMethod(colRel.getProperty().getType(), "getOnceAdded" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);
                method = new JavaMethod(colRel.getProperty().getType(), "getRemoved" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);
                method = new JavaMethod(colRel.getProperty().getType(), "getUpdated" + colRel.getProperty().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);

                method = new JavaMethod(colRel.getProperty().getType(), colRel.getProperty().getAccessor().getName()+"Collection");
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);

                method = new JavaMethod(new Type(colRel.getAggregate(),1), colRel.getProperty().getAccessor().getName());
                method.setModifiers(new String[]{"public"});
                innerClass.addMethod(method);
            }

            method = new JavaMethod(new Type("int"), "hashCode");
            method.setModifiers(new String[]{"public"});
            innerClass.addMethod(method);

            method = new JavaMethod(new Type("boolean"), "equals");
            method.setModifiers(new String[]{"public"});
            method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.lang.Object"), "other")});
            innerClass.addMethod(method);

            if (metaVo.isStrictOrdering()) {
                method = new JavaMethod(new Type("int"), "compareTo");
                method.setModifiers(new String[]{"public"});
                method.setParameters(new JavaParameter[]{new JavaParameter(new Type("java.lang.Object"), "other")});
                innerClass.addMethod(method);
            }

            // add to list
            retLst.add(retVal);
        }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

    protected boolean isDynamicJavaClass(JavaClass clazz) {
        return clazz instanceof DynamicJavaClass;
    }

    protected JavaClass createDynamicJavaClass(String className, String packaze, String[] imports, QDoxCapableMetadataProvider metadataProvider) {
        JavaClass retVal = new DynamicJavaClass(className);
        JavaDocBuilder builder = new JavaDocBuilder(metadataProvider.getDocletTagFactory());
        retVal.setParent(createJavaClassParent(builder.getClassLibrary(), packaze, imports));
        retVal.setJavaClassCache(createJavaClassCache(builder, metadataProvider.getMetadata(), retVal));
        return retVal;
    }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

                }
                if (name == null) {
                    return null;
                }
                for (Iterator iter = javaClasses.iterator(); iter.hasNext();) {
                    JavaClass javaClass = (JavaClass)iter.next();
                    if (javaClass.getFullyQualifiedName().equals(name)) {
                        if (log.isTraceEnabled()) {
                            log.trace("createJavaClassCache.getClassByName() FOUND javaClass="+javaClass);
                        }
                        return javaClass;
                    }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

            return null;
        }

        JavaField field;
        JavaMethod method;
        JavaClass retVal = createDynamicJavaClass(getDestinationClassname(metadata), getDestinationPackage(metadata), null, getMetadataProvider());
        retVal.setInterface(true);
        retVal.setModifiers(new String[]{"public"});
        String[] extendz = getExtends(metadata);
        Type[] extendzTypes = new Type[extendz.length];
        for (int j = 0; j < extendz.length; j++) {
            extendzTypes[j] = new Type(extendz[j]);
        }
        retVal.setImplementz(extendzTypes);

        field = new JavaField(new Type("java.lang.String"), ejbHomeUtils.getCompleteNameConst());
        field.setModifiers(new String[]{"public","static","final"});
        retVal.addField(field);

        field = new JavaField(new Type("java.lang.String"), ejbHomeUtils.getJndiNameConst());
        field.setModifiers(new String[]{"public","static","final"});
        retVal.addField(field);

        Collection methods = getCreateMethods(metadata);
        for (Iterator iter = methods.iterator(); iter.hasNext();) {
            method = new DuplicatedJavaMethod((JavaMethod)iter.next());
            method.setModifiers(new String[0]);
            retVal.addMethod(method);
        }

        if (ejbUtils.isEntityBean(metadata)) {
            methods = getFinderMethods(metadata);
            for (Iterator iter = methods.iterator(); iter.hasNext();) {
                method = new DuplicatedJavaMethod((JavaMethod)iter.next());
                method.setModifiers(new String[0]);
                retVal.addMethod(method);
            }
        }
        methods = getHomeMethods(metadata);
        for (Iterator iter = methods.iterator(); iter.hasNext();) {
            method = new DuplicatedJavaMethod((JavaMethod)iter.next());
            method.setModifiers(new String[0]);
            retVal.addMethod(method);
        }

        return new JavaClass[]{retVal};
    }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

    public String jndiName(JavaClass clazz) {
        return ejbUtils.getJndiName(clazz, EjbUtils.LOCAL);
    }

    public boolean shouldGenerate(Object metadata) {
        JavaClass javaClass = (JavaClass) metadata;
        EjbHomeTag homeTag = (EjbHomeTag) javaClass.getTagByName(TagLibrary.EJB_HOME);
        boolean generate = super.shouldGenerate(metadata);
        generate = generate && ((homeTag == null) || Arrays.asList(homeTag.getGenerate()).contains("local"));
        if (generate) generate = isDestinationDirty(javaClass);
        if (generate && verbose) System.out.println(
                "Generating Local Home Interface for " + javaClass.getName());
        return generate;
    }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

        if (destFile.exists()) {
            //Iterate over all beans & compare
            Collection beans = ejbUtils.getBeans(getMetadata());
            File sourceFile = null;
            for (Iterator iterator = beans.iterator(); iterator.hasNext();) {
                JavaClass javaClass = (JavaClass) iterator.next();
                sourceFile = getSourceFile(javaClass);
                if (destFile.lastModified() < sourceFile.lastModified()) {
                    System.out.println("dirty source = " + sourceFile.getAbsolutePath());
                    dirty = true;
                    break;
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

            return null;
        }

        JavaField field;
        JavaMethod method;
        JavaClass retVal = createDynamicJavaClass(getDestinationClassname(metadata),
                getDestinationPackage(metadata), null, getMetadataProvider());
        retVal.setModifiers(new String[] { "public" });
        if (getEjbUtils().isMessageDrivenBean(metadata)) {
            field = new JavaField(new Type(String.class.getName()), "DESTINATION_JNDI_NAME");
            field.setModifiers(new String[] { "private", "final", "static" });
            retVal.addField(field);
            field = new JavaField(new Type(String.class.getName()), "CONNECTION_FACTORY_JNDI_NAME");
            field.setModifiers(new String[] { "private", "final", "static" });
            retVal.addField(field);
        }
        if (isCachehomes()) {
            if (getEjbUtils().isMessageDrivenBean(metadata)) {
                field = new JavaField(new Type("javax.jms.Queue"), "cachedQueue");
                field.setModifiers(new String[] { "private", "static" });
                retVal.addField(field);
                field = new JavaField(new Type("javax.jms.QueueConnectionFactory"), "cachedConnectionFactory");
                field.setModifiers(new String[] { "private", "static" });
                retVal.addField(field);
            } else {
                if (hasRemoteView(metadata)) {
                    field = new JavaField(new Type(getRemoteHomeInterfacePlugin().getVirtualType(metadata)
                            .toString()), "cachedRemoteHome");
                    field.setModifiers(new String[] { "private", "static" });
                    retVal.addField(field);
                }
                if (hasLocalView(metadata)) {
                    field = new JavaField(new Type(getLocalHomeInterfacePlugin().getVirtualType(metadata)
                            .toString()), "cachedHome");
                    field.setModifiers(new String[] { "private", "static" });
                    retVal.addField(field);
                }
            }
        }

        method = new JavaMethod(getDestinationClassname(metadata));
        method.setConstructor(true);
        method.setModifiers(new String[] { "private" });
        retVal.addMethod(method);

        if (getEjbUtils().isMessageDrivenBean(metadata)) {
            method = new JavaMethod("getQueue");
            method.setModifiers(new String[] { "public", "static" });
            method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
            method.setReturns(new Type("javax.jms.Queue"));
            retVal.addMethod(method);
            method = new JavaMethod("getQueue");
            method.setModifiers(new String[] { "public", "static" });
            method.setParameters(new JavaParameter[] { new JavaParameter(new Type("java.util.Hashtable"),
                    "environment") });
            method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
            method.setReturns(new Type("javax.jms.Queue"));
            retVal.addMethod(method);
            method = new JavaMethod("getQueueConnection");
            method.setModifiers(new String[] { "public", "static" });
            method.setExceptions(new Type[] { new Type("javax.naming.NamingException"),
                    new Type("javax.jms.JMSException") });
            method.setReturns(new Type("javax.jms.QueueConnection"));
            retVal.addMethod(method);
            method = new JavaMethod("getQueueConnection");
            method.setModifiers(new String[] { "public", "static" });
            method.setParameters(new JavaParameter[] { new JavaParameter(new Type("java.util.Hashtable"),
                    "environment") });
            method.setExceptions(new Type[] { new Type("javax.naming.NamingException"),
                    new Type("javax.jms.JMSException") });
            method.setReturns(new Type("javax.jms.QueueConnection"));
            retVal.addMethod(method);
        } else {
            if (hasRemoteView(metadata)) {
                method = new JavaMethod("getHome");
                method.setModifiers(new String[] { "public", "static" });
                method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
                method
                        .setReturns(new Type(getRemoteHomeInterfacePlugin().getVirtualType(metadata)
                                .toString()));
                retVal.addMethod(method);
                method = new JavaMethod("getHome");
                method.setModifiers(new String[] { "public", "static" });
                method.setParameters(new JavaParameter[] { new JavaParameter(new Type("java.util.Hashtable"),
                        "env") });
                method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
                method
                        .setReturns(new Type(getRemoteHomeInterfacePlugin().getVirtualType(metadata)
                                .toString()));
                retVal.addMethod(method);
            }
            if (hasLocalView(metadata)) {
                method = new JavaMethod("getLocalHome");
                method.setModifiers(new String[] { "public", "static" });
                method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
                method
                        .setReturns(new Type(getLocalHomeInterfacePlugin().getVirtualType(metadata)
                                .toString()));
                retVal.addMethod(method);
                method = new JavaMethod("getLocalHome");
                method.setModifiers(new String[] { "public", "static" });
                method.setParameters(new JavaParameter[] { new JavaParameter(new Type("java.util.Hashtable"),
                        "env") });
                method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
                method
                        .setReturns(new Type(getLocalHomeInterfacePlugin().getVirtualType(metadata)
                                .toString()));
                retVal.addMethod(method);
            }
            method = new JavaMethod("lookupHome");
            method.setModifiers(new String[] { "private", "static" });
            method.setParameters(new JavaParameter[] {
                    new JavaParameter(new Type("java.util.Hashtable"), "env"),
                    new JavaParameter(new Type("java.lang.String"), "jndiName"),
                    new JavaParameter(new Type("java.lang.Class"), "narrowTo") });
            method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
            method.setReturns(new Type("java.lang.Object"));
            retVal.addMethod(method);
        }

        method = new JavaMethod("lookup");
        method.setModifiers(new String[] { "public", "static" });
        method.setParameters(new JavaParameter[] { new JavaParameter(new Type("java.util.Hashtable"), "env"),
                new JavaParameter(new Type("java.lang.String"), "jndiName") });
        method.setExceptions(new Type[] { new Type("javax.naming.NamingException") });
        method.setReturns(new Type("java.lang.Object"));
        retVal.addMethod(method);

        if (isIncludeGUID()) {
            method = new JavaMethod("generateGUID");
            method.setModifiers(new String[] { "public", "final", "static" });
            method.setParameters(new JavaParameter[] {

            new JavaParameter(new Type("java.lang.Object"), "o") });

            method.setReturns(new Type("java.lang.String"));
            retVal.addMethod(method);
            field = new JavaField(new Type("java.lang.String"), "hexServerIP");
            field.setModifiers(new String[] { "private", "static" });
            retVal.addField(field);
            field = new JavaField(new Type("java.security.SecureRandom"), "seeder");
            field.setModifiers(new String[] { "private", "final", "static" });
            retVal.addField(field);
            method = new JavaMethod("hexFormat");
            method.setModifiers(new String[] { "private", "static" });
            method.setParameters(new JavaParameter[] {

            new JavaParameter(new Type("byte", 1), "value"), new JavaParameter(new Type("int"), "length") });

            method.setReturns(new Type("java.lang.String"));
            retVal.addMethod(method);
            method = new JavaMethod("hexFormat");
            method.setModifiers(new String[] { "private", "static" });
            method.setParameters(new JavaParameter[] {

            new JavaParameter(new Type("int"), "value"), new JavaParameter(new Type("int"), "length") });

            method.setReturns(new Type("java.lang.String"));
            retVal.addMethod(method);
        }

        return new JavaClass[] { retVal };
    }
View Full Code Here

Examples of com.thoughtworks.qdox.model.JavaClass

        return new JavaClass[] { retVal };
    }

    public boolean shouldGenerate(Object metadata) {
        JavaClass javaClass = (JavaClass) metadata;
        EjbUtilTag utilTag = (EjbUtilTag) javaClass.getTagByName(TagLibrary.EJB_UTIL);
        boolean generate = ejbUtils.shouldGenerate(metadata);
        generate = generate && ((utilTag == null) || (utilTag.isGenerate()));
        if (generate) generate = isDestinationDirty(javaClass);
        if (generate && verbose) System.out.println(
                "Generating Lookup Object for " + javaClass.getName());
        return generate;
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.