ingo@1022: /*
ingo@1022: * Copyright (c) 2010 by Intevation GmbH
ingo@1022: *
ingo@1022: * This program is free software under the LGPL (>=v2.1)
ingo@1022: * Read the file LGPL.txt coming with the software for details
ingo@1022: * or visit http://www.gnu.org/licenses/ if it does not exist.
ingo@1022: */
ingo@1022:
tim@5: package de.intevation.gnv.artifactdatabase.client;
tim@5:
sascha@683: import de.intevation.gnv.artifactdatabase.objects.ArtifactDescription;
sascha@683: import de.intevation.gnv.artifactdatabase.objects.ArtifactObject;
sascha@683: import de.intevation.gnv.artifactdatabase.objects.DefaultInputParameter;
sascha@683: import de.intevation.gnv.artifactdatabase.objects.InputParameter;
sascha@683:
sascha@683: import de.intevation.gnv.util.XSLTransformer;
sascha@683:
tim@12: import java.util.ArrayList;
tim@5: import java.util.Collection;
tim@10: import java.util.Iterator;
tim@40: import java.util.Locale;
tim@5:
tim@35: import junit.framework.TestCase;
tim@35:
tim@5: import org.apache.log4j.BasicConfigurator;
tim@5: import org.apache.log4j.Logger;
tim@5:
tim@5: /**
sascha@684: * @author Tim Englich
sascha@681: *
tim@5: */
tim@5: public class ArtifactDatabaseClientTestCase extends TestCase {
tim@5:
tim@5: /**
tim@5: * the logger, used to log exceptions and additonaly information
tim@5: */
tim@5: private static Logger log = null;
tim@36:
tim@36: static {
tim@5: BasicConfigurator.configure();
tim@5: log = Logger.getLogger(DefaultArtifactDatabaseClient.class);
tim@5: }
tim@36:
tim@5: /**
tim@5: * Constructor
sascha@681: *
tim@10: * @param namemessage
tim@5: */
tim@5: public ArtifactDatabaseClientTestCase(String name) {
tim@5: super(name);
tim@5: }
tim@5:
tim@5: /**
tim@5: * @see junit.framework.TestCase#setUp()
tim@5: */
tim@35: @Override
tim@5: protected void setUp() throws Exception {
tim@5: super.setUp();
tim@5: }
tim@36:
tim@36: public void testArtifactDatabaseClient() {
tim@36:
tim@5: try {
tim@36: ArtifactDatabaseClient artifactDatabaseClient = ArtifactDatabaseClientFactory
tim@40: .getInstance().getArtifactDatabaseClient(Locale.GERMAN);
tim@36: Collection factories = artifactDatabaseClient
tim@36: .getArtifactFactories();
tim@36: if (factories != null && !factories.isEmpty()) {
tim@10: Iterator it = factories.iterator();
tim@36: while (it.hasNext()) {
tim@10: ArtifactObject aof = it.next();
tim@36: ArtifactObject artifact = artifactDatabaseClient
tim@36: .createNewArtifact(aof);
tim@36: ArtifactDescription ad = artifactDatabaseClient
tim@157: .getCurrentStepDescription(aof, artifact,true);
tim@10: log.debug("Artifact aktualisert.");
tim@11: XSLTransformer transformer = new XSLTransformer();
tim@36: String transformedUI = transformer
tim@36: .transform(
tim@36: ad.getCurrentUI(),
tim@36: "UTF-8",
tim@36: ("src/main/webapp/WEB-INF/config/templates/describe-ui.xsl"));
tim@11: log.debug(transformedUI);
tim@36:
tim@36: Collection inputParameter = new ArrayList(
tim@36: 1);
tim@36: inputParameter.add(new DefaultInputParameter("product",
tim@36: new String[] { "timeSeries" }));
tim@36: ad = artifactDatabaseClient.doNextStep(aof, artifact,
tim@36: "timeSeries", inputParameter);
tim@36:
tim@36: transformedUI = transformer
tim@36: .transform(
tim@36: ad.getCurrentUI(),
tim@36: "UTF-8",
tim@36: ("src/main/webapp/WEB-INF/config/templates/describe-ui.xsl"));
tim@12: log.debug(transformedUI);
tim@10: }
tim@10: }
tim@36:
tim@667: } catch (Exception e) {
tim@36: log.error(e, e);
tim@5: fail();
tim@5: }
tim@5: }
tim@5:
tim@5: }