package org.nightlabs.jfire.dynamictrade.ui.articlecontainer.detail; import java.rmi.RemoteException; import javax.naming.NamingException; import javax.security.auth.login.LoginException; import org.eclipse.swt.widgets.Composite; import org.nightlabs.ModuleException; import org.nightlabs.i18n.I18nText; import org.nightlabs.jdo.NLJDOHelper; import org.nightlabs.jfire.accounting.Price; import org.nightlabs.jfire.accounting.id.TariffID; import org.nightlabs.jfire.base.JFireEjb3Factory; import org.nightlabs.jfire.base.login.ui.Login; import org.nightlabs.jfire.dynamictrade.DynamicTradeManagerRemote; import org.nightlabs.jfire.store.id.ProductTypeID; import org.nightlabs.jfire.store.id.UnitID; import org.nightlabs.jfire.trade.Article; import org.nightlabs.jfire.trade.id.OfferID; import org.nightlabs.jfire.trade.id.SegmentID; /** * @author Fitas Amine - fitas at nightlabs dot de */ public class RecurringArticleAdder extends ArticleAdder { // @Override // protected Composite createRequirementsNotFulfilledComposite(Composite parent) // { // ArticleContainer ac = getSegmentEdit().getArticleContainer(); // String message = String.format( // "Recurring Trade is currently not supported on Dynamic Trade", // TradePlugin.getArticleContainerTypeString(ac.getClass(), false), TradePlugin.getArticleContainerTypeString(ac.getClass(), true), // ArticleContainerUtil.getArticleContainerID(ac) // ); // return new MessageComposite(parent, SWT.NONE, message, MessageType.INFO); // } @Override protected Composite _createComposite(Composite parent) { return new RecurringArticleAdderComposite(parent, this); } @Override public Article createArticle( SegmentID segmentID, OfferID offerID, ProductTypeID productTypeID, long quantity, UnitID unitID, TariffID tariffID, I18nText productName, Price singlePrice, boolean allocate, boolean allocateSynchronously) throws RemoteException, LoginException, NamingException, ModuleException { DynamicTradeManagerRemote dtm = JFireEjb3Factory.getRemoteBean(DynamicTradeManagerRemote.class, Login.getLogin().getInitialContextProperties()); return dtm.createRecurringArticle(segmentID, offerID, productTypeID, quantity, unitID, tariffID, productName, singlePrice, getFetchGroups(), NLJDOHelper.MAX_FETCH_DEPTH_NO_LIMIT); // } }