コード例 #1
0
        public static Int32 ImportApplication(IRSAPIClient client, Int32 workspaceId, bool forceFlag, string filePath, string applicationName, int appArtifactID = -1)
        {
            Console.WriteLine("Starting Import Application.....");
            int artifactID = 0;

            client.APIOptions.WorkspaceID = workspaceId;             //set the target workspace of application to be imported.

            // Create an application install request.
            // This list contains the ArtifactID for each Relativity Application that you want to install.
            List <int> appsToOverride = new List <int>();

            // Set the forceFlag to true. The forceFlag unlocks any applications in the workspace
            // that conflict with the application that you are loading. The applications must be unlocked
            // for the install operation to succeed.

            AppInstallRequest appInstallRequest = new AppInstallRequest();

            appInstallRequest.FullFilePath = filePath;
            appInstallRequest.ForceFlag    = forceFlag;
            appInstallRequest.AppsToOverride.Add(appArtifactID);

            try
            {
                ProcessOperationResult por = null;
                por = client.InstallApplication(client.APIOptions, appInstallRequest);

                if (por.Success)
                {
                    while (client.GetProcessState(client.APIOptions, por.ProcessID).State == ProcessStateValue.Running)
                    {
                        Thread.Sleep(10);
                    }

                    client.GetProcessState(client.APIOptions, por.ProcessID);
                    Console.WriteLine("Import Application Application complete.....");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Failed to import Application" + ex.Message);
            }

            Console.WriteLine("Querying for Application artifact id....");
            kCura.Relativity.Client.DTOs.Query <kCura.Relativity.Client.DTOs.RelativityApplication> query = new kCura.Relativity.Client.DTOs.Query <kCura.Relativity.Client.DTOs.RelativityApplication>();
            query.Fields.Add(new FieldValue(RelativityApplicationFieldNames.Name));
            query.Condition = new kCura.Relativity.Client.TextCondition(RelativityApplicationFieldNames.Name, kCura.Relativity.Client.TextConditionEnum.EqualTo, applicationName);
            kCura.Relativity.Client.DTOs.QueryResultSet <kCura.Relativity.Client.DTOs.RelativityApplication> queryResultSet = client.Repositories.RelativityApplication.Query(query);

            if (queryResultSet != null)
            {
                artifactID = queryResultSet.Results.FirstOrDefault().Artifact.ArtifactID;
                Console.WriteLine("Application artifactid is " + artifactID);
            }

            Console.WriteLine("Exiting Import Application method.....");
            return(artifactID);
        }
コード例 #2
0
        private static QueryResultSet <Workspace> GetArtifactIdOfTemplate(IRSAPIClient proxy, string templateName)
        {
            try
            {
                //Query for the starter template
                Query <Workspace> query = new Query <Workspace>();
                query.Condition = new kCura.Relativity.Client.TextCondition(FieldFieldNames.Name, TextConditionEnum.EqualTo, templateName);

                query.Fields = kCura.Relativity.Client.DTOs.FieldValue.AllFields;
                kCura.Relativity.Client.DTOs.QueryResultSet <kCura.Relativity.Client.DTOs.Workspace> resultSet = proxy.Repositories.Workspace.Query(query, 0);
                return(resultSet);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
コード例 #3
0
        public static kCura.Relativity.Client.DTOs.RDO RetrieveJob(IRSAPIClient connection, int artifactID)
        {
            List <kCura.Relativity.Client.DTOs.FieldValue> fields = new List <kCura.Relativity.Client.DTOs.FieldValue>();

            fields.Add(new kCura.Relativity.Client.DTOs.FieldValue(new Guid(Helper.Constant.FIELD_JOB_MISSING_FILE_INDICATOR_GUID)));
            fields.Add(new kCura.Relativity.Client.DTOs.FieldValue(new Guid(Helper.Constant.FIELD_JOB_ERROR_MESSAGE_GUID)));

            WholeNumberCondition condition = null;

            condition = new WholeNumberCondition(artifactID, NumericConditionEnum.EqualTo);

            kCura.Relativity.Client.DTOs.Query <kCura.Relativity.Client.DTOs.RDO> q = new kCura.Relativity.Client.DTOs.Query <kCura.Relativity.Client.DTOs.RDO>
            {
                ArtifactTypeGuid = new Guid(Helper.Constant.OBJECT_TYPE_FILE_VALIDATION_GUID),
                Fields           = fields
            };
            kCura.Relativity.Client.DTOs.QueryResultSet <kCura.Relativity.Client.DTOs.RDO> qrs = new kCura.Relativity.Client.DTOs.QueryResultSet <kCura.Relativity.Client.DTOs.RDO>();

            try
            {
                qrs = connection.Repositories.RDO.Query(q);
                if (qrs.Success)
                {
                    if (qrs.Results.Count == 0)
                    {
                        throw new Exception(Helper.Constant.EM_NO_CONFIGURATION);
                    }
                    else
                    {
                        return(qrs.Results[0].Artifact);
                    }
                }
                else
                {
                    throw new Exception(FormatError(qrs));
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
コード例 #4
0
        public static Int32 GetFieldArtifactID(String fieldname, IDBContext workspaceDbContext, IRSAPIClient client)
        {
            int fieldArtifactID = 0;

            kCura.Relativity.Client.DTOs.Query <kCura.Relativity.Client.DTOs.Field> query = new kCura.Relativity.Client.DTOs.Query <kCura.Relativity.Client.DTOs.Field>();
            query.Condition = new kCura.Relativity.Client.TextCondition(kCura.Relativity.Client.DTOs.FieldFieldNames.Name, kCura.Relativity.Client.TextConditionEnum.EqualTo, fieldname);
            query.Fields    = kCura.Relativity.Client.DTOs.FieldValue.AllFields;
            kCura.Relativity.Client.DTOs.QueryResultSet <kCura.Relativity.Client.DTOs.Field> resultSet = client.Repositories.Field.Query(query, 0);

            fieldArtifactID = resultSet.Results[0].Artifact.ArtifactID;
            return(fieldArtifactID);
        }