using System.Collections.Generic;
using System.ServiceModel;

using BeWo.Service.MessageContracts;

using BS.Shared.DataContracts;

namespace BeWo.Service.ServiceContracts
{
    [ServiceContract]
    public interface IStreamingService
    {
        [FaultContract(typeof(BeWoFault))]
        [OperationContract]
        void DeactivateBeWoFolders(List<BeWoFolderDC> dcs);

        [FaultContract(typeof(BeWoFault))]
        [OperationContract]
        List<BeWoFolderDC> GetAllBeWoFolders();

        [FaultContract(typeof(BeWoFault))]
        [OperationContract]
        List<long> InsertNewBeWoFolders(List<BeWoFolderDC> dcs);

        [FaultContract(typeof(BeWoFault))]
        [OperationContract]
        void UpdateBeWoFolders(List<BeWoFolderDC> dcs);

        [FaultContract(typeof(BeWoFault))]
        [OperationContract]
        UploadResult UploadDocument(UploadPackage pUpload);

        [FaultContract(typeof (BeWoFault))]
        [OperationContract]
        UploadResult UpdateDocument(UpdatePackage pUpload);
    }
}