private void InitializeTables() { List <string> tableNames = _Database.ListTables(); tableNames = tableNames.ConvertAll(d => d.ToLower()); if (!tableNames.Contains(USER_TABLE.ToLower())) { List <Column> userColumns = UserMaster.GetTableColumns(); _Database.CreateTable(USER_TABLE, userColumns); } if (!tableNames.Contains(API_KEY_TABLE.ToLower())) { List <Column> apiKeyColumns = ApiKey.GetTableColumns(); _Database.CreateTable(API_KEY_TABLE, apiKeyColumns); } if (!tableNames.Contains(PERMISSION_TABLE.ToLower())) { List <Column> permissionColumns = Permission.GetTableColumns(); _Database.CreateTable(PERMISSION_TABLE, permissionColumns); } if (!tableNames.Contains(LOCKS_TABLE.ToLower())) { List <Column> locksColumns = UrlLock.GetTableColumns(); _Database.CreateTable(LOCKS_TABLE, locksColumns); } if (!tableNames.Contains(CONTAINERS_TABLE.ToLower())) { List <Column> containerColumns = Container.GetTableColumns(); _Database.CreateTable(CONTAINERS_TABLE, containerColumns); } if (!tableNames.Contains(OBJECTS_TABLE.ToLower())) { List <Column> objectColumns = ObjectMetadata.GetTableColumns(); _Database.CreateTable(OBJECTS_TABLE, objectColumns); } if (!tableNames.Contains(CONTAINERS_KVP_TABLE.ToLower())) { List <Column> containerMetadataColumns = ContainerKeyValuePair.GetTableColumns(); _Database.CreateTable(CONTAINERS_KVP_TABLE, containerMetadataColumns); } if (!tableNames.Contains(OBJECTS_KVP_TABLE.ToLower())) { List <Column> objectMetadataColumns = ObjectKeyValuePair.GetTableColumns(); _Database.CreateTable(OBJECTS_KVP_TABLE, objectMetadataColumns); } if (!tableNames.Contains(AUDIT_LOG_TABLE.ToLower())) { List <Column> auditLogColumns = AuditLogEntry.GetTableColumns(); _Database.CreateTable(AUDIT_LOG_TABLE, auditLogColumns); } }
private List <ObjectKeyValuePair> ParseFilterKeyValuePairs(string filters) { List <ObjectKeyValuePair> filterKps = new List <ObjectKeyValuePair>(); if (!string.IsNullOrEmpty(filters)) { string[] keyValues = filters.Split(new char[] { ';' }); foreach (string kv in keyValues) { if (string.IsNullOrEmpty(kv)) { continue; } string[] kpairs = kv.Split(new char[] { ',' }); ObjectKeyValuePair kvp = new ObjectKeyValuePair(); kvp.KeyName = kpairs[0]; kvp.Value = string.Join(",", kpairs.Skip(1).ToArray()); kvp.IsArray = kpairs.Length > 2; filterKps.Add(kvp); } } return(filterKps); }
private List <T> DataTableToListObject <T>(DataTable result) { if (result == null || result.Rows.Count < 1) { return(new List <T>()); } if (typeof(T) == typeof(ApiKey)) { return(ApiKey.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(UserMaster)) { return(UserMaster.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(Permission)) { return(Permission.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(UrlLock)) { return(UrlLock.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(Container)) { return(Container.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(ObjectMetadata)) { return(ObjectMetadata.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(ContainerKeyValuePair)) { return(ContainerKeyValuePair.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(ObjectKeyValuePair)) { return(ObjectKeyValuePair.FromDataTable(result) as List <T>); } else if (typeof(T) == typeof(AuditLogEntry)) { return(AuditLogEntry.FromDataTable(result) as List <T>); } throw new ArgumentException("Unknown object type: " + typeof(T).Name); }
public static List <ServiceObject> ConvertToServiceObjectList(List <GeneralObject> objectList, string[] properties) { List <ServiceObject> svsObjects = new List <ServiceObject>(); foreach (var obj in objectList) { ServiceObject sObject = new ServiceObject(); sObject.ObjectID = obj.GeneralObjectID; sObject.ObjectName = obj.GeneralObjectName; sObject.ObjectOwner = obj.ObjectOwner; sObject.Updated = obj.Updated; sObject.Created = obj.Created; sObject.CreatedBy = obj.CreatedBy; sObject.UpdatedBy = obj.UpdatedBy; sObject.ObjectDefinitionId = obj.GeneralObjectDefinitionID; if (properties != null) { foreach (var objField in obj.GeneralObjectFields) { if (!properties.Contains(objField.GeneralObjectDefinitionField.GeneralObjectDefinitionFieldName, new IgnoreCaseStringCompare <string>())) { continue; } ObjectKeyValuePair kvPair = new ObjectKeyValuePair(); kvPair.KeyName = objField.GeneralObjectDefinitionField.GeneralObjectDefinitionFieldName; kvPair.Value = ObjectConverter.EntityField2ServiceField(objField); sObject.Properties.Add(kvPair); } } svsObjects.Add(sObject); } return(svsObjects); }
private void EnsureServiceProperties(ServiceObject svcObject) { logger.LogDebug("Start EnsureServiceProperties"); ObjectDefinition objDef = objectService.GetObjectDefinitionById(svcObject.ObjectDefinitionId); List <ObjectKeyValuePair> removedProperties = new List <ObjectKeyValuePair>(); if (objDef != null) { logger.LogDebug("objDef : " + objDef.ObjectDefinitionName); } else { logger.LogError("objDef is null"); } logger.LogDebug("svcObject.Properties.Count: " + svcObject.Properties.Count); for (int i = 0; i < svcObject.Properties.Count; i++) { ObjectKeyValuePair property = svcObject.Properties[i]; var defField = (from f in objDef.ObjectFields where f.ObjectDefinitionFieldName.Equals(property.KeyName, StringComparison.InvariantCultureIgnoreCase) select f).FirstOrDefault(); if (defField != null) { ServiceObjectField fieldValue = null; switch (defField.GeneralObjectDefinitionFiledType) { case GeneralObjectDefinitionFieldType.PrimeType: fieldValue = JsonConvert.DeserializeObject <PrimeObjectField>(property.Value.ToString()); if (fieldValue == null) { removedProperties.Add(property); } ((PrimeObjectField)fieldValue).PrimeDataType = ((PrimeDefinitionField)defField).PrimeDataType; property.Value = fieldValue; break; case GeneralObjectDefinitionFieldType.File: fieldValue = JsonConvert.DeserializeObject <ObjectFileField>(property.Value.ToString()); if (fieldValue == null) { removedProperties.Add(property); } property.Value = fieldValue; break; case GeneralObjectDefinitionFieldType.ObjectReference: fieldValue = JsonConvert.DeserializeObject <ObjectReferenceField>(property.Value.ToString()); if (fieldValue == null) { removedProperties.Add(property); } property.Value = fieldValue; break; case GeneralObjectDefinitionFieldType.SingleSelection: fieldValue = JsonConvert.DeserializeObject <SingleSelectionField>(property.Value.ToString()); if (fieldValue == null) { removedProperties.Add(property); } property.Value = fieldValue; break; default: //not supported yet. logger.LogError("Not supported property : " + property.KeyName); removedProperties.Add(property); break; } } else { removedProperties.Add(property); } } foreach (var p in removedProperties) { svcObject.Properties.Remove(p); } logger.LogDebug("End EnsureServiceProperties"); }