All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openas2.BaseComponent Maven / Gradle / Ivy

Go to download

Open source implementation of the AS2 standard for signed encrypted and compressed document transfer

There is a newer version: 2.10.1
Show newest version
package org.openas2;

import java.util.HashMap;
import java.util.Map;
import java.util.StringTokenizer;

import org.openas2.params.InvalidParameterException;


public class BaseComponent implements Component {
    private Map parameters;
    private Session session;

    public String getName()
    {
        String clippedName = this.getClass().getName();

        // this clips off the package information
        StringTokenizer classParts = new StringTokenizer(clippedName, ".", false);

        while (classParts.hasMoreTokens())
        {
            clippedName = classParts.nextToken();
        }

        return clippedName;
    }

    public void setParameter(String key, String value)
    {
        getParameters().put(key, value);
    }

    public void setParameter(String key, int value)
    {
        setParameter(key, Integer.toString(value));
    }

    public String getParameter(String key, boolean required)
            throws InvalidParameterException
    {
        String parameter = getParameters().get(key);

        if (required && (parameter == null))
        {
            throw new InvalidParameterException("Missing required parameter.", this, key, null);
        }

        return parameter;
    }

    public String getParameter(String key, String defaultValue) throws InvalidParameterException
    {
        String value = getParameter(key, false);

        if (value == null)
        {
            return defaultValue;
        }

        return value;
    }

    public int getParameterInt(String key, boolean required)
            throws InvalidParameterException
    {
        String value = getParameter(key, required);

        if (value != null)
        {
            return Integer.parseInt(value);
        }

        return 0;
    }

    public Map getParameters()
    {
        if (parameters == null)
        {
            parameters = new HashMap();
        }

        return parameters;
    }

    public Session getSession()
    {
        return session;
    }

    public void init(Session session, Map parameters) throws OpenAS2Exception
    {
        this.session = session;
        this.parameters = parameters;
    }

    @Override
    public void destroy() throws Exception
    {
        // override if needed
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy