private RevisionedObject ResolveRDO(string rdo_type_name, string rdo_name, string rdo_revision, bool throwException) { RevisionedObject res = null; if (rdo_revision == null) { rdo_revision = ""; } if (rdo_revision != "") { const string queryRDObyRevision = "ELEMENT (SELECT o FROM {0}Extent AS o WHERE o.RevBase.Name = $1 AND o.Revision = $2)"; // Query from revision IQuery oqlQuery = ObjScope.GetOqlQuery(string.Format(queryRDObyRevision, rdo_type_name)); IQueryResult result = oqlQuery.Execute(rdo_name, rdo_revision); if (result.Count > 0) { res = result[0] as RevisionedObject; } result.Dispose(); } else { res = (ResolveNDO(rdo_type_name + "Base", rdo_name, throwException) as RevisionBase).Current; } if (res == null && throwException == true) { throw new UOServiceException(string.Format(MSG.Object_not_found, string.Format("{0}({1})", rdo_name, rdo_revision), rdo_type_name)); } return(res); }
protected HoldReleaseHistory ResolveHoldHistory(Container co) { object res = null; IQuery oqlQuery = ObjScope.GetOqlQuery(queryHoldHistory); IQueryResult result = oqlQuery.Execute(co); if (result.Count > 0) { res = result[0]; } result.Dispose(); return(res as HoldReleaseHistory); }
protected Container ResolveContainer(string container_name) { const string queryContainerByName = "ELEMENT (SELECT o FROM ContainerExtent AS o WHERE o.ContainerName = $1)"; object res = null; IQuery oqlQuery = ObjScope.GetOqlQuery(queryContainerByName); IQueryResult result = oqlQuery.Execute(container_name); if (result.Count > 0) { res = result[0]; } result.Dispose(); return(res as Container); }
private int RDOBaseUsageCount(RevisionedObject rdo_obj) { const string queryRDOBaseUsageCount = "SELECT COUNT(*) FROM {0}Extent AS o WHERE o.RevBase = $1"; int count = 0; IQuery oqlQuery = ObjScope.GetOqlQuery(string.Format(queryRDOBaseUsageCount, rdo_obj.GetType().Name)); IQueryResult result = oqlQuery.Execute(rdo_obj.RevBase); if (result.Count > 0) { count = (int)result[0]; } result.Dispose(); return(count); }
private object ResolveNDO(string ndo_type_name, string ndo_name, bool throwException) { const string queryNDObyName = "ELEMENT (SELECT o FROM {0}Extent AS o WHERE o.Name = $1)"; object res = null; IQuery oqlQuery = ObjScope.GetOqlQuery(string.Format(queryNDObyName, ndo_type_name)); IQueryResult result = oqlQuery.Execute(ndo_name); if (result.Count > 0) { res = result[0]; } result.Dispose(); if (res == null && throwException == true) { throw new UOServiceException(string.Format(MSG.Object_not_found, ndo_name, ndo_type_name)); } return(res); }
protected CurrentStatus ResolveCurrentStatus(CurrentStatus cs) { const string queryCurrentStatus = @"ELEMENT (SELECT * FROM CurrentStatusExtent AS o WHERE o.Workflow = $1 AND o.WorkflowStep = $2 AND o.CurrentStepPass = $3 AND o.Spec = $4 AND o.InProcess = $5 AND o.Resource = $6 AND o.Factory = $7 )"; object res = null; IQuery oqlQuery = ObjScope.GetOqlQuery(queryCurrentStatus); IQueryResult result = oqlQuery.Execute(cs.Workflow, cs.WorkflowStep, cs.CurrentStepPass, cs.Spec, cs.InProcess, cs.Resource, cs.Factory); if (result.Count > 0) { res = result[0]; } result.Dispose(); return(res as CurrentStatus); }
/// <summary> /// Libera a instancia. /// </summary> /// <param name="disposing"></param> protected virtual void Dispose(bool disposing) { _result.Dispose(); }