public static void CreateFolder(IRestClient restClient, AgorumFolder folder,
                                        TransactionResponse transaction = null)
        {
            var createRequest = new RestRequest("api/rest/object", Method.POST);
            if (transaction != null)
                createRequest.AddParameter("transactionId", transaction.TransactionId);
            createRequest.AddParameter("handler", "object");

            createRequest.AddParameter("data", createRequest.JsonSerializer.Serialize(new Data
                {
                    classname = folder.Classname,
                    name = AgorumObject.RemoveIllegalChars(folder.Name),
                    target = folder.AnyFolderPathId != 0 ? folder.AnyFolderPathId.ToString() : GetAgorumAbsolutePath(folder.AnyFolderPath),
                    createtarget = folder.AnyFolderPathId == 0
                }));

            foreach (var property in folder.GetProperties())
            {
                createRequest.AddParameter("properties", property);
            }

            var tmpResponse = restClient.Execute<RestResponseBaseExt<AgorumFolder>>(createRequest);
            ThrowIfNotSuccessful(tmpResponse);

            folder.FillFromObject(tmpResponse.Data.Data);
        }
Ejemplo n.º 2
0
        public void CreateFolder(AgorumFolder folder)
        {
            if (folder == null)
                return;

            CheckAndCreateConnection();
            AgorumRestHelper.CreateFolder(RestClient, folder, TransactionResponse);
        }