/*
 * Copyright (c) 2004, 2005, ADAPT project partners (IST-2001-37126).
 *
 * PurchaseOrderBasicServiceRemote.java
 */

package org.eu.adapt.demonstrator.bs.manufacturer;

import java.rmi.RemoteException;
import javax.ejb.EJBObject;
import org.eu.adapt.services.demo_1_1.manufacturer.PurchaseOrderBasicService_wsdl.types.PurchaseOrderState;
import org.eu.adapt.services.demo_1_1.manufacturer.PurchaseOrderBasicService_wsdl.types.PurchaseOrderStatus;
import org.ws_i.www.SampleApplications.SupplyChainManagement._2002_10.ManufacturerPO_xsd.*;
import org.ws_i.www.SampleApplications.SupplyChainManagement._2002_10.ManufacturerSN_xsd.ShipmentNoticeType;

public interface PurchaseOrderBasicServiceRemote extends EJBObject
{
    public String[] listPurchaseOrders()
        throws RemoteException;

    public PurchaseOrderState getPurchaseOrderState(String purchaseOrderNumber)
        throws RemoteException;

    public boolean checkPurchaseOrder(PurchOrdType purchaseOrder)
        throws RemoteException;
    
    public boolean addPurchaseOrder(PurchOrdType purchaseOrder)
        throws RemoteException;

    public PurchaseOrderStatus updatePurchaseOrder(String purchaseOrderNumber)
        throws RemoteException;

    public ShipmentNoticeType createShipmentNotice(String purchaseOrderNumber)
        throws RemoteException;

    public boolean removePurchaseOrder(PurchOrdType purchaseOrder)
        throws RemoteException;
}