Update of 
/cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-ejb/src/test/java/org/xdoclet/plugin/ejb/entity
In directory 
sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14511/plugin-ejb/src/test/java/org/xdoclet/plugin/ejb/entity

Added Files:
        ValueObjectPluginNormalValueObjectTestCase.java 
        ValueObjectPluginMediumStrictValueObjectTestCase.java 
        ValueObjectPluginXDocletExampleCustomerTestCase.java 
        ValueObjectPluginXDocletExampleCustomerLightTestCase.java 
        ValueObjectPluginXDocletExampleProductTestCase.java 
        AbstractValueObjectPluginTestCase.java 
        ValueObjectPluginLightValueObjectTestCase.java 
        ValueObjectPluginMediumValueObjectTestCase.java 
        ValueObjectPluginAccountValueObjectTestCase.java 
        ValueObjectPluginMediumFullCloneValueObjectTestCase.java 
        AbstractValueObjectPluginXDocletExampleTestCase.java 
Log Message:
* Various refactorings
* Completed ValueObjectPlugin

--- NEW FILE: ValueObjectPluginXDocletExampleProductTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginXDocletExampleProductTestCase
    extends AbstractValueObjectPluginXDocletExampleTestCase {
    protected String getExpectedClass() {
        return "ProductValueObject";
    }
}

--- NEW FILE: ValueObjectPluginNormalValueObjectTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginNormalValueObjectTestCase extends 
AbstractValueObjectPluginTestCase {
    protected String getExpectedClass() {
        return "NormalValueObject";
    }
}

--- NEW FILE: ValueObjectPluginLightValueObjectTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginLightValueObjectTestCase extends 
AbstractValueObjectPluginTestCase {
    protected String getExpectedClass() {
        return "LightValueObject";
    }
}

--- NEW FILE: ValueObjectPluginXDocletExampleCustomerLightTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginXDocletExampleCustomerLightTestCase
    extends AbstractValueObjectPluginXDocletExampleTestCase {
    protected String getExpectedClass() {
        return "CustomerLightValueObject";
    }
}

--- NEW FILE: AbstractValueObjectPluginTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

import java.io.File;
import java.io.FileNotFoundException;

import java.net.MalformedURLException;
import java.net.URL;

import org.generama.MetadataProvider;
import org.generama.Plugin;
import org.generama.QDoxCapableMetadataProvider;
import org.generama.VelocityTemplateEngine;
import org.generama.WriterMapper;

import org.xdoclet.AbstractJavaGeneratingPluginTestCase;
import org.xdoclet.QDoxMetadataProvider;

import org.xdoclet.plugin.ejb.EjbConfig;
import org.xdoclet.plugin.ejb.entity.ValueObjectPlugin;

import com.thoughtworks.qdox.model.JavaClass;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public abstract class AbstractValueObjectPluginTestCase extends 
AbstractJavaGeneratingPluginTestCase {
    protected URL getExpected() throws FileNotFoundException, 
MalformedURLException {
        String basedir = System.getProperty("xdoclet.ejb.home");
        assertNotNull(basedir);
        return new File(basedir + 
"/../testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/util/" + 
getExpectedClass() +
            ".java").toURL();
    }

    protected MetadataProvider createMetadataProvider() throws Exception {
        String basedir = System.getProperty("xdoclet.ejb.home");
        assertNotNull(basedir);
        return new QDoxMetadataProvider(new File(basedir + 
"/../testapp-ejb/src/main/java/"));
    }

    protected Plugin createPlugin(MetadataProvider metadataProvider, 
WriterMapper writerMapper)
        throws Exception {
        QDoxCapableMetadataProvider qdoxCapableMetadataProvider = 
(QDoxCapableMetadataProvider) metadataProvider;
        EjbConfig config = new EjbConfig(qdoxCapableMetadataProvider, 
writerMapper);

        // Pending GRA-4
        // MergeableVelocityTemplateEngine mergeableVelocityTemplateEngine = 
new MergeableVelocityTemplateEngine() {
        VelocityTemplateEngine mergeableVelocityTemplateEngine = new 
VelocityTemplateEngine() {
                protected String getScriptPath(String scriptName, Class 
pluginClass) {
                    pluginClass = ValueObjectPlugin.class;
                    String className = pluginClass.getName();
                    int unqualifiedNameStart = className.lastIndexOf('.') + 1;
                    scriptName = className.substring(unqualifiedNameStart) + 
".vm";
                    return super.getScriptPath(scriptName, pluginClass);
                }
            };

        return new ValueObjectPlugin(mergeableVelocityTemplateEngine, 
qdoxCapableMetadataProvider, writerMapper, config) {
                public boolean shouldGenerate(Object metadata) {
                    JavaClass javaClass = (JavaClass) metadata;
                    boolean shouldGenerate = super.shouldGenerate(javaClass);

                    if (shouldGenerate) {
                        System.out.println(".shouldGenerate() shouldGenerate=" 
+ shouldGenerate);
                        System.out.println(".shouldGenerate() 
getExpectedClass()=" + getExpectedClass());
                        System.out.println(".shouldGenerate() 
super.getDestinationClassname(javaClass)=" +
                            super.getDestinationClassname(javaClass));

                        if 
(getExpectedClass().equals(super.getDestinationClassname(javaClass))) {
                            return true;
                        }
                    }

                    return false;
                }
            };
    }

    protected abstract String getExpectedClass();
}

--- NEW FILE: ValueObjectPluginMediumFullCloneValueObjectTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginMediumFullCloneValueObjectTestCase extends 
AbstractValueObjectPluginTestCase {
    protected String getExpectedClass() {
        return "MediumFullCloneValueObject";
    }
}

--- NEW FILE: AbstractValueObjectPluginXDocletExampleTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

import java.io.File;
import java.io.FileNotFoundException;

import java.net.MalformedURLException;
import java.net.URL;

import org.generama.MetadataProvider;
import org.generama.Plugin;
import org.generama.QDoxCapableMetadataProvider;
import org.generama.VelocityTemplateEngine;
import org.generama.WriterMapper;

import org.xdoclet.AbstractJavaGeneratingPluginTestCase;
import org.xdoclet.QDoxMetadataProvider;

import org.xdoclet.plugin.ejb.EjbConfig;
import org.xdoclet.plugin.ejb.entity.ValueObjectPlugin;

import com.thoughtworks.qdox.model.JavaClass;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public abstract class AbstractValueObjectPluginXDocletExampleTestCase extends 
AbstractJavaGeneratingPluginTestCase {
    protected URL getExpected() throws FileNotFoundException, 
MalformedURLException {
        String basedir = System.getProperty("xdoclet.ejb.home");
        assertNotNull(basedir);
        return new File(basedir + 
"/src/test/java/org/xdoclet/plugin/ejb/entity/valueobject/" + 
getExpectedClass() +
            ".java").toURL();
    }

    protected MetadataProvider createMetadataProvider() throws Exception {
        String basedir = System.getProperty("xdoclet.ejb.home");
        assertNotNull(basedir);
        return new QDoxMetadataProvider(new File(basedir + 
"/src/test/java/org/xdoclet/plugin/ejb/entity/valueobject/"));
    }

    protected Plugin createPlugin(MetadataProvider metadataProvider, 
WriterMapper writerMapper)
        throws Exception {
        QDoxCapableMetadataProvider qdoxCapableMetadataProvider = 
(QDoxCapableMetadataProvider) metadataProvider;
        EjbConfig config = new EjbConfig(qdoxCapableMetadataProvider, 
writerMapper);

        // Pending GRA-4
        // MergeableVelocityTemplateEngine mergeableVelocityTemplateEngine = 
new MergeableVelocityTemplateEngine() {
        VelocityTemplateEngine mergeableVelocityTemplateEngine = new 
VelocityTemplateEngine() {
                protected String getScriptPath(String scriptName, Class 
pluginClass) {
                    pluginClass = ValueObjectPlugin.class;
                    String className = pluginClass.getName();
                    int unqualifiedNameStart = className.lastIndexOf('.') + 1;
                    scriptName = className.substring(unqualifiedNameStart) + 
".vm";
                    return super.getScriptPath(scriptName, pluginClass);
                }
            };

        return new ValueObjectPlugin(mergeableVelocityTemplateEngine, 
qdoxCapableMetadataProvider, writerMapper, config) {
                public boolean shouldGenerate(Object metadata) {
                    JavaClass javaClass = (JavaClass) metadata;
                    boolean shouldGenerate = super.shouldGenerate(javaClass);

                    if (shouldGenerate) {
                        System.out.println(".shouldGenerate() shouldGenerate=" 
+ shouldGenerate);
                        System.out.println(".shouldGenerate() 
getExpectedClass()=" + getExpectedClass());
                        System.out.println(".shouldGenerate() 
super.getDestinationClassname(javaClass)=" +
                            super.getDestinationClassname(javaClass));

                        if 
(getExpectedClass().equals(super.getDestinationClassname(javaClass))) {
                            return true;
                        }
                    }

                    return false;
                }
            };
    }

    protected abstract String getExpectedClass();
}

--- NEW FILE: ValueObjectPluginMediumValueObjectTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginMediumValueObjectTestCase extends 
AbstractValueObjectPluginTestCase {
    protected String getExpectedClass() {
        return "MediumValueObject";
    }
}

--- NEW FILE: ValueObjectPluginXDocletExampleCustomerTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginXDocletExampleCustomerTestCase
    extends AbstractValueObjectPluginXDocletExampleTestCase {
    protected String getExpectedClass() {
        return "CustomerValueObject";
    }
}

--- NEW FILE: ValueObjectPluginAccountValueObjectTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginAccountValueObjectTestCase extends 
AbstractValueObjectPluginTestCase {
    protected String getExpectedClass() {
        return "AccountValueObject";
    }
}

--- NEW FILE: ValueObjectPluginMediumStrictValueObjectTestCase.java ---
/*
 * Copyright (c) 2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.ejb.entity;

/**
 * Testcase for ValueObjectPlugin
 *
 * @author Diogo Quintela
 */
public class ValueObjectPluginMediumStrictValueObjectTestCase extends 
AbstractValueObjectPluginTestCase {
    protected String getExpectedClass() {
        return "MediumStrictValueObject";
    }
}



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
xdoclet-plugins-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xdoclet-plugins-commits

Reply via email to