private BasicOutboundComm ReadOutboundCommFromDataReader(IDataRecord reader) // Not static -- accesses cache, requiring connection strings { int outboundCommId = reader.GetInt32(0); int senderPersonId = reader.GetInt32(1); int fromPersonId = reader.GetInt32(2); int organizationId = reader.GetInt32(3); DateTime createdDateTime = reader.GetDateTime(4); int resolverClassId = reader.GetInt32(5); // Resolve to class name -- cached call more efficient than Join in Select string recipientDataXml = reader.GetString(6); // Interpreted by ResolverClass bool resolved = reader.GetBoolean(7); DateTime resolvedDateTime = reader.GetDateTime(8); OutboundCommPriority priority = (OutboundCommPriority)reader.GetInt32(9); int transmitterClassId = reader.GetInt32(10); // Resolve to class name -- cached call more efficient than Join in Select string payloadXml = reader.GetString(11); // Interpreted by TransmitterClass bool open = reader.GetBoolean(12); DateTime startTransmitDateTime = reader.GetDateTime(13); DateTime closedDateTime = reader.GetDateTime(14); int recipientCount = reader.GetInt32(15); // Set by resolver int recipientSuccessCount = reader.GetInt32(16); int recipientFailCount = reader.GetInt32(17); // TODO: resolve resolverClass, transmitterClass string resolverClass = GetCachedResolverClassName(resolverClassId); string transmitterClass = GetCachedTransmitterClassName(transmitterClassId); return(new BasicOutboundComm (outboundCommId, senderPersonId, fromPersonId, organizationId, createdDateTime, resolverClass, recipientDataXml, resolved, resolvedDateTime, priority, transmitterClass, payloadXml, open, startTransmitDateTime, closedDateTime, recipientCount, recipientSuccessCount, recipientFailCount)); }
public BasicOutboundComm(int outboundCommId, int senderPersonId, int fromPersonId, int organizationId, DateTime createdDateTime, string resolverClass, string recipientDataXml, bool resolved, DateTime resolvedDateTime, OutboundCommPriority priority, string transmitterClass, string payloadXml, bool open, DateTime startTransmitDateTime, DateTime closedDateTime, int recipientCount, int recipientsSuccess, int recipientsFail) { OutboundCommId = outboundCommId; SenderPersonId = senderPersonId; FromPersonId = fromPersonId; OrganizationId = organizationId; CreatedDateTime = createdDateTime; ResolverClass = resolverClass; RecipientDataXml = recipientDataXml; Resolved = resolved; ResolvedDateTime = resolvedDateTime; Priority = priority; TransmitterClass = transmitterClass; PayloadXml = payloadXml; Open = open; StartTransmitDateTime = startTransmitDateTime; ClosedDateTime = closedDateTime; RecipientCount = recipientCount; RecipientsSuccess = recipientsSuccess; RecipeintsFail = recipientsFail; }
public static OutboundComm Create(Person sender, Person from, Organization organization, string resolverClassString, string recipientDataXml, string transmitterClassString, string payloadXml, OutboundCommPriority priority) { int newId = SwarmDb.GetDatabaseForWriting().CreateOutboundComm(sender != null? sender.Identity: 0, from != null? from.Identity: 0, organization != null? organization.Identity: 0, resolverClassString, recipientDataXml ?? string.Empty, transmitterClassString, payloadXml, priority); return FromIdentityAggressive(newId); }
private static OutboundComm Create(Person sender, Person from, Organization organization, string resolverDataXml, string recipientDataXml, string transmitterClassString, string payloadXml, OutboundCommPriority priority) { int newId = SwarmDb.GetDatabaseForWriting() .CreateOutboundComm(sender != null ? sender.Identity : 0, from != null ? from.Identity : 0, organization != null ? organization.Identity : 0, resolverDataXml, recipientDataXml ?? string.Empty, transmitterClassString, payloadXml, priority); return(FromIdentityAggressive(newId)); }
public static OutboundComm Create(Person sender, Person from, Organization organization, CommResolverClass resolverClass, string recipientDataXml, CommTransmitterClass transmitterClass, string payloadXml, OutboundCommPriority priority) { string resolverClassString = string.Empty; if (resolverClass != CommResolverClass.Unknown) { resolverClassString = resolverClass.ToString(); } string transmitterClassString = string.Empty; if (transmitterClass != CommTransmitterClass.Unknown) { transmitterClassString = "Swarmops.Utility.Communications." + transmitterClass.ToString(); } return Create(sender, from, organization, resolverClassString, recipientDataXml, transmitterClassString, payloadXml, priority); }
public static OutboundComm Create(Person sender, Person from, Organization organization, ICommsResolver resolver, string recipientDataXml, CommTransmitterClass transmitterClass, string payloadXml, OutboundCommPriority priority) { string resolverDataXml = string.Empty; if (resolver != null) { resolverDataXml = new ResolverEnvelope(resolver).ToXml(); } string transmitterClassString = string.Empty; if (transmitterClass != CommTransmitterClass.Unknown) { transmitterClassString = "Swarmops.Utility.Communications." + transmitterClass; } return(Create(sender, from, organization, resolverDataXml, recipientDataXml, transmitterClassString, payloadXml, priority)); }
public BasicOutboundComm (int outboundCommId, int senderPersonId, int fromPersonId, int organizationId, DateTime createdDateTime, string resolverClass, string recipientDataXml, bool resolved, DateTime resolvedDateTime, OutboundCommPriority priority, string transmitterClass, string payloadXml, bool open, DateTime startTransmitDateTime, DateTime closedDateTime, int recipientCount, int recipientsSuccess, int recipientsFail) { this.OutboundCommId = outboundCommId; this.SenderPersonId = senderPersonId; this.FromPersonId = fromPersonId; this.OrganizationId = organizationId; this.CreatedDateTime = createdDateTime; this.ResolverClass = resolverClass; this.RecipientDataXml = recipientDataXml; this.Resolved = resolved; this.ResolvedDateTime = resolvedDateTime; this.Priority = priority; this.TransmitterClass = transmitterClass; this.PayloadXml = payloadXml; this.Open = open; this.StartTransmitDateTime = startTransmitDateTime; this.ClosedDateTime = closedDateTime; this.RecipientCount = recipientCount; this.RecipientsSuccess = recipientsSuccess; this.RecipeintsFail = recipientsFail; }
public int CreateOutboundComm(int senderPersonId, int fromPersonId, int organizationId, string resolverClass, string recipientDataXml, string transmitterClass, string payloadXml, OutboundCommPriority priority) { using (DbConnection connection = GetMySqlDbConnection()) { connection.Open(); DbCommand command = GetDbCommand("CreateOutboundComm", connection); command.CommandType = CommandType.StoredProcedure; AddParameterWithName(command, "senderPersonId", senderPersonId); AddParameterWithName(command, "fromPersonId", fromPersonId); AddParameterWithName(command, "organizationId", organizationId); AddParameterWithName(command, "resolverClass", String.IsNullOrEmpty(resolverClass) ? "0" : resolverClass); // Will be turned into ID by stored procedure AddParameterWithName(command, "recipientDataXml", String.IsNullOrEmpty(recipientDataXml) ? string.Empty : recipientDataXml); AddParameterWithName(command, "transmitterClass", transmitterClass); // Will be turned into ID by stored procedure AddParameterWithName(command, "payloadXml", payloadXml); AddParameterWithName(command, "priority", (int)priority); // convert enum to integerized priority; convert back on field read AddParameterWithName(command, "createdDateTime", DateTime.UtcNow); return(Convert.ToInt32(command.ExecuteScalar())); } }
public int CreateOutboundComm(int senderPersonId, int fromPersonId, int organizationId, string resolverClass, string recipientDataXml, string transmitterClass, string payloadXml, OutboundCommPriority priority) { using (DbConnection connection = GetMySqlDbConnection()) { connection.Open(); DbCommand command = GetDbCommand("CreateOutboundComm", connection); command.CommandType = CommandType.StoredProcedure; AddParameterWithName(command, "senderPersonId", senderPersonId); AddParameterWithName(command, "fromPersonId", fromPersonId); AddParameterWithName(command, "organizationId", organizationId); AddParameterWithName(command, "resolverClass", String.IsNullOrEmpty(resolverClass) ? "0" : resolverClass); // Will be turned into ID by stored procedure AddParameterWithName(command, "recipientDataXml", String.IsNullOrEmpty(recipientDataXml) ? string.Empty : recipientDataXml); AddParameterWithName(command, "transmitterClass", transmitterClass); // Will be turned into ID by stored procedure AddParameterWithName(command, "payloadXml", payloadXml); AddParameterWithName(command, "priority", (int)priority); // convert enum to integerized priority; convert back on field read AddParameterWithName(command, "createdDateTime", DateTime.UtcNow); return Convert.ToInt32(command.ExecuteScalar()); } }