view gnv/src/test/java/de/intevation/gnv/artifactdatabase/client/ArtifactDatabaseClientTestCase.java @ 1022:28a0628b11b0

Added license file and license header. gnv/trunk@1258 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Tue, 02 Nov 2010 17:15:08 +0000
parents 57fa8019fbdc
children
line wrap: on
line source
/*
 * Copyright (c) 2010 by Intevation GmbH
 *
 * This program is free software under the LGPL (>=v2.1)
 * Read the file LGPL.txt coming with the software for details
 * or visit http://www.gnu.org/licenses/ if it does not exist.
 */

package de.intevation.gnv.artifactdatabase.client;

import de.intevation.gnv.artifactdatabase.objects.ArtifactDescription;
import de.intevation.gnv.artifactdatabase.objects.ArtifactObject;
import de.intevation.gnv.artifactdatabase.objects.DefaultInputParameter;
import de.intevation.gnv.artifactdatabase.objects.InputParameter;

import de.intevation.gnv.util.XSLTransformer;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.Locale;

import junit.framework.TestCase;

import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Logger;

/**
 * @author <a href="mailto:tim.englich@intevation.de">Tim Englich</a>
 *
 */
public class ArtifactDatabaseClientTestCase extends TestCase {

    /**
     * the logger, used to log exceptions and additonaly information
     */
    private static Logger log = null;

    static {
        BasicConfigurator.configure();
        log = Logger.getLogger(DefaultArtifactDatabaseClient.class);
    }

    /**
     * Constructor
     *
     * @param namemessage
     */
    public ArtifactDatabaseClientTestCase(String name) {
        super(name);
    }

    /**
     * @see junit.framework.TestCase#setUp()
     */
    @Override
    protected void setUp() throws Exception {
        super.setUp();
    }

    public void testArtifactDatabaseClient() {

        try {
            ArtifactDatabaseClient artifactDatabaseClient = ArtifactDatabaseClientFactory
                    .getInstance().getArtifactDatabaseClient(Locale.GERMAN);
            Collection<ArtifactObject> factories = artifactDatabaseClient
                    .getArtifactFactories();
            if (factories != null && !factories.isEmpty()) {
                Iterator<ArtifactObject> it = factories.iterator();
                while (it.hasNext()) {
                    ArtifactObject aof = it.next();
                    ArtifactObject artifact = artifactDatabaseClient
                            .createNewArtifact(aof);
                    ArtifactDescription ad = artifactDatabaseClient
                            .getCurrentStepDescription(aof, artifact,true);
                    log.debug("Artifact aktualisert.");
                    XSLTransformer transformer = new XSLTransformer();
                    String transformedUI = transformer
                            .transform(
                                    ad.getCurrentUI(),
                                    "UTF-8",
                                    ("src/main/webapp/WEB-INF/config/templates/describe-ui.xsl"));
                    log.debug(transformedUI);

                    Collection<InputParameter> inputParameter = new ArrayList<InputParameter>(
                            1);
                    inputParameter.add(new DefaultInputParameter("product",
                            new String[] { "timeSeries" }));
                    ad = artifactDatabaseClient.doNextStep(aof, artifact,
                            "timeSeries", inputParameter);

                    transformedUI = transformer
                            .transform(
                                    ad.getCurrentUI(),
                                    "UTF-8",
                                    ("src/main/webapp/WEB-INF/config/templates/describe-ui.xsl"));
                    log.debug(transformedUI);
                }
            }

        } catch (Exception e) {
            log.error(e, e);
            fail();
        }
    }

}

http://dive4elements.wald.intevation.org