public EntryPointReceivedRequest(Guid id, DateTime date, Guid requestId, PayloadIdentifier payload,
     SearchRequestIndentifier request)
 {
     Id = id;
     Date = date;
     RequestId = requestId;
     Payload = payload;
     Request = request;
 }
 public EntryPointReturnedResponse(Guid id, Guid requestId, DateTime date, PayloadIdentifier payload,
     StateIdentifier state,SearchRequestIndentifier request)
 {
     Id = id;
     RequestId = requestId;
     Date = date;
     Payload = payload;
     State = state;
     RequestContext = request;
 }
 public ReturnEntryPointResponse(Guid id, Guid requestId,
     DateTime date, StateIdentifier state, PayloadIdentifier payload,SearchRequestIndentifier request,NoRecordBillableIdentifier billNoRecords)
 {
     Id = id;
     Date = date;
     RequestId = requestId;
     Payload = payload;
     State = state;
     Request = request;
     BillNoRecords = billNoRecords;
 }
        public ReceiveEntryPointRequest(Guid id, Guid requestId,
            DateTime date, SearchRequestIndentifier request, PayloadIdentifier payload,NoRecordBillableIdentifier billNoRecords)
        {
            Id = id;
            Date = date;
            RequestId = requestId;
            Request = request;
            Payload = payload;
            BillNoRecords = billNoRecords;

        }
 public Request RaiseSecurityFlag(Guid id, DataProviderCommandSource dataProvider,
     DateTime date, CommandType commandType, string metaData, string payload, string message, DataProviderNoRecordState billNoRecords)
 {
     DataProvider = new DataProviderIdentifier(dataProvider, DataProviderAction.Response,
         DataProviderResponseState.Successful, billNoRecords);
     Date = date;
     Connection = new ConnectionTypeIdentifier();
     Payload = new PayloadIdentifier(metaData, payload, message);
     CommandType = commandType;
     State = new StateIdentifier();
     RequestContext = new SearchRequestIndentifier();
     return this;
 }
 public Request CreateTransaction(Guid packageId, long packageVersion, DateTime date, Guid userId,
     Guid contractId,
     string system, long contractVersion, DataProviderResponseState state, string accountNumber, double packageCostPrice, double packageRecommendedPrice, DataProviderNoRecordState billNoRecords)
 {
     DataProvider = new DataProviderIdentifier(DataProviderCommandSource.EntryPoint, DataProviderAction.Response, state, billNoRecords);
     Date = date;
     Connection = new ConnectionTypeIdentifier();
     Payload = new PayloadIdentifier();
     CommandType = CommandType.Accounting;
     State = new StateIdentifier((int) state, state.ToString());
     RequestContext = new SearchRequestIndentifier();
     Package = new PackageIdentifier(packageId, new VersionIdentifier(packageVersion), packageCostPrice, packageRecommendedPrice);
     return this;
 }
 public Request ResponseReceivedFromDataProvider(DataProviderIdentifier dataProvider, DateTime date,
     ConnectionTypeIdentifier connection, PayloadIdentifier payload)
 {
     DataProvider = dataProvider;
     Date = date;
     Connection = connection;
     Payload = payload;
     CommandType = CommandType.EndExecution;
     State = new StateIdentifier();
     RequestContext = new SearchRequestIndentifier();
     return this;
 }
 public Request EntryPointResponse(DateTime date, StateIdentifier state,
     PayloadIdentifier payload, SearchRequestIndentifier request, NoRecordBillableIdentifier billNoRecords)
 {
   
     DataProvider = new DataProviderIdentifier(DataProviderCommandSource.EntryPoint, DataProviderAction.Response,
         (DataProviderResponseState)state.Id, (DataProviderNoRecordState)billNoRecords.Id);
     Date = date;
     Connection = new ConnectionTypeIdentifier();
     Payload = payload;
     CommandType = CommandType.EndExecution;
     State = state;
     RequestContext = request;
     return this;
 }