/* *****************************************************************************
* JFire - it's hot - Free ERP System - http://jfire.org *
* Copyright (C) 2004-2005 NightLabs - http://NightLabs.org *
* *
* This library is free software; you can redistribute it and/or *
* modify it under the terms of the GNU Lesser General Public *
* License as published by the Free Software Foundation; either *
* version 2.1 of the License, or (at your option) any later version. *
* *
* This library is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
* Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU Lesser General Public *
* License along with this library; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin St, Fifth Floor, *
* Boston, MA 02110-1301 USA *
* *
* Or get it online : *
* http://opensource.org/licenses/lgpl-license.php *
* *
* *
******************************************************************************/
package org.nightlabs.jfire.trade.ui.transfer.pay;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
/**
* @author Marco Schulze - marco at nightlabs dot de
*/
public abstract class AbstractClientPaymentProcessorFactory
implements ClientPaymentProcessorFactory
{
private String id;
private String clientPaymentProcessorFactoryName;
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#setID(java.lang.String)
*/
public void setID(String id)
{
this.id = id;
}
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#getID()
*/
public String getID()
{
return id;
}
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#setName(java.lang.String)
*/
public void setName(
String clientPaymentProcessorFactoryName)
{
this.clientPaymentProcessorFactoryName = clientPaymentProcessorFactoryName;
}
/**
* @return Returns the clientPaymentProcessorFactoryName.
*/
public String getName()
{
return clientPaymentProcessorFactoryName;
}
private Set<ModeOfPaymentRef> modeOfPaymentRefs = new HashSet<ModeOfPaymentRef>();
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#addModeOfPaymentRef(org.nightlabs.jfire.trade.ui.pay.ClientPaymentProcessorFactory.ModeOfPaymentRef)
*/
public void addModeOfPaymentRef(ModeOfPaymentRef modeOfPaymentRef)
{
modeOfPaymentRefs.add(modeOfPaymentRef);
unmodifiableModeOfPaymentRefs = null;
}
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#removeModeOfPaymentRef(org.nightlabs.jfire.trade.ui.pay.ClientPaymentProcessorFactory.ModeOfPaymentRef)
*/
public void removeModeOfPaymentRef(ModeOfPaymentRef modeOfPaymentRef)
{
modeOfPaymentRefs.remove(modeOfPaymentRef);
unmodifiableModeOfPaymentRefs = null;
}
private Collection<ModeOfPaymentRef> unmodifiableModeOfPaymentRefs = null;
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#getModeOfPaymentRefs()
*/
public Collection<ModeOfPaymentRef> getModeOfPaymentRefs()
{
if (unmodifiableModeOfPaymentRefs == null)
unmodifiableModeOfPaymentRefs = Collections.unmodifiableCollection(modeOfPaymentRefs);
return unmodifiableModeOfPaymentRefs;
}
private Set<ModeOfPaymentFlavourRef> modeOfPaymentFlavourRefs = new HashSet<ModeOfPaymentFlavourRef>();
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#addModeOfPaymentFlavourRef(org.nightlabs.jfire.trade.ui.pay.ClientPaymentProcessorFactory.ModeOfPaymentFlavourRef)
*/
public void addModeOfPaymentFlavourRef(
ModeOfPaymentFlavourRef modeOfPaymentFlavourRef)
{
modeOfPaymentFlavourRefs.add(modeOfPaymentFlavourRef);
unmodifiableModeOfPaymentFlavourRefs = null;
}
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#removeModeOfPaymentFlavourRef(org.nightlabs.jfire.trade.ui.pay.ClientPaymentProcessorFactory.ModeOfPaymentFlavourRef)
*/
public void removeModeOfPaymentFlavourRef(
ModeOfPaymentFlavourRef modeOfPaymentFlavourRef)
{
modeOfPaymentFlavourRefs.remove(modeOfPaymentFlavourRef);
unmodifiableModeOfPaymentFlavourRefs = null;
}
private Collection<ModeOfPaymentFlavourRef> unmodifiableModeOfPaymentFlavourRefs = null;
/**
* @see org.nightlabs.jfire.trade.ui.transfer.pay.ClientPaymentProcessorFactory#getModeOfPaymentFlavourRefs()
*/
public Collection<ModeOfPaymentFlavourRef> getModeOfPaymentFlavourRefs()
{
if (unmodifiableModeOfPaymentFlavourRefs == null)
unmodifiableModeOfPaymentFlavourRefs = Collections.unmodifiableCollection(modeOfPaymentFlavourRefs);
return unmodifiableModeOfPaymentFlavourRefs;
}
}