public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item;
            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                StringBuilder itemBeingDeleted;
                if (!values.TryGetValue("itemToDelete", out itemBeingDeleted))
                {
                    throw new ArgumentException("itemToDelete value not supplied.");
                }
                var itemToDelete = serializer.Deserialize <ServerExplorerItem>(itemBeingDeleted);
                Dev2Logger.Log.Info("Delete Item Service." + itemToDelete);
                item = ServerExplorerRepo.DeleteItem(itemToDelete, GlobalConstants.ServerWorkspaceID);
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Error("Delete Item Error", e);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            return(serializer.SerializeToBuilder(item));
        }
Example #2
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                if (!values.ContainsKey("resourceId"))
                {
// ReSharper disable NotResolvedInText
                    throw new ArgumentNullException("No resourceId was found in the incoming data");
// ReSharper restore NotResolvedInText
                }
                var id = Guid.Parse(values["resourceId"].ToString());
                Dev2Logger.Log.Info("Get Versions. " + id);
                var item = ServerVersionRepo.GetVersions(id);
                return(serializer.SerializeToBuilder(item));
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Error(e);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
Example #3
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item;
            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                StringBuilder itemToBeRenamed;
                StringBuilder newPath;
                if (!values.TryGetValue("itemToMove", out itemToBeRenamed))
                {
                    throw new ArgumentException("itemToMove value not supplied.");
                }
                if (!values.TryGetValue("newPath", out newPath))
                {
                    throw new ArgumentException("newName value not supplied.");
                }

                var itemToMove = serializer.Deserialize <ServerExplorerItem>(itemToBeRenamed);
                Dev2Logger.Log.Info(String.Format("Move Item. Path:{0} NewPath:{1}", itemToBeRenamed, newPath));
                item = ServerExplorerRepo.MoveItem(itemToMove, newPath.ToString(), GlobalConstants.ServerWorkspaceID);
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Error(e);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            return(serializer.SerializeToBuilder(item));
        }
Example #4
0
        public override StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException(nameof(values));
                }
                if (!values.ContainsKey("resourceId"))
                {
                    throw new ArgumentNullException(ErrorResource.NoResourceIdInTheIncomingData);
                }
                var id = Guid.Parse(values["resourceId"].ToString());
                Dev2Logger.Info("Get Versions. " + id, GlobalConstants.WarewolfInfo);
                var item = ServerVersionRepo.GetVersions(id);
                return(serializer.SerializeToBuilder(item));
            }
            catch (Exception e)
            {
                Dev2Logger.Error(e, GlobalConstants.WarewolfError);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
Example #5
0
 static T CheckAuthorization <T>(ExecuteMessage message) where T : class
 {
     if (message != null)
     {
         var s = ContainsAuthorizationError(message.Message.ToString(), out bool containsAuthorization);
         if (containsAuthorization)
         {
             ShowAuthorizationErrorPopup(s);
             if (typeof(T) == typeof(IExplorerRepositoryResult))
             {
                 var explorerRepositoryResult = new ExplorerRepositoryResult(ExecStatus.Fail, s);
                 return(explorerRepositoryResult as T);
             }
             if (typeof(T) == typeof(ExecuteMessage))
             {
                 var returnMessage = new ExecuteMessage
                 {
                     HasError = true,
                     Message  = new StringBuilder(s)
                 };
                 return(returnMessage as T);
             }
         }
         else
         {
             if (typeof(T) == typeof(ExecuteMessage))
             {
                 return(message as T);
             }
         }
     }
     return(default(T));
 }
Example #6
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item;

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException(nameof(values));
                }
                if (theWorkspace == null)
                {
                    throw new ArgumentNullException(nameof(theWorkspace));
                }
                if (!values.TryGetValue("path", out StringBuilder path))
                {
                    throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "path"));
                }
                if (!values.TryGetValue("newPath", out StringBuilder newPath))
                {
                    throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "newPath"));
                }
                Dev2Logger.Info($"Reanme Folder. Path:{path} NewPath:{newPath}", GlobalConstants.WarewolfInfo);
                var explorerRepository = new ServerExplorerRepository();
                item = explorerRepository.RenameFolder(path.ToString(), newPath.ToString(), theWorkspace.ID);
            }
            catch (Exception e)
            {
                Dev2Logger.Error(e, GlobalConstants.WarewolfError);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            var serializer = new Dev2JsonSerializer();

            return(serializer.SerializeToBuilder(item));
        }
Example #7
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item = null;
            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException(nameof(values));
                }
                StringBuilder itemToBeRenamed;
                StringBuilder newName;
                StringBuilder folderToBeRenamed = null;
                if (!values.TryGetValue("itemToRename", out itemToBeRenamed))
                {
                    if (!values.TryGetValue("folderToRename", out folderToBeRenamed))
                    {
                        throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "itemToRename"));
                    }
                }
                if (!values.TryGetValue("newName", out newName))
                {
                    throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "newName"));
                }
                IExplorerItem explorerItem;
                if (itemToBeRenamed != null)
                {
                    explorerItem = ServerExplorerRepo.Find(Guid.Parse(itemToBeRenamed.ToString()));
                    if (explorerItem == null)
                    {
                        throw new ArgumentException(string.Format(ErrorResource.FailedToFindResource, "newName"));
                    }
                    Dev2Logger.Info($"Rename Item. Path:{explorerItem.ResourcePath} NewPath:{newName}");
                    item = ServerExplorerRepo.RenameItem(explorerItem, newName.ToString(), GlobalConstants.ServerWorkspaceID);
                }
                else if (folderToBeRenamed != null)
                {
                    explorerItem = new ServerExplorerItem()
                    {
                        ResourceType = "Folder",
                        ResourcePath = folderToBeRenamed.ToString()
                    };
                    item = ServerExplorerRepo.RenameItem(explorerItem, newName.ToString(), GlobalConstants.ServerWorkspaceID);
                }
            }
            catch (Exception e)
            {
                Dev2Logger.Error(e);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            return(serializer.SerializeToBuilder(item));
        }
Example #8
0
        public override StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            Dev2Logger.Info("Fetch Explorer Items", GlobalConstants.WarewolfInfo);

            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException(nameof(values));
                }
                values.TryGetValue("ReloadResourceCatalogue", out StringBuilder tmp);
                var reloadResourceCatalogueString = "";
                if (tmp != null)
                {
                    reloadResourceCatalogueString = tmp.ToString();
                }
                var reloadResourceCatalogue = false;

                if (!string.IsNullOrEmpty(reloadResourceCatalogueString) && !bool.TryParse(reloadResourceCatalogueString, out reloadResourceCatalogue))
                {
                    reloadResourceCatalogue = false;
                }

                if (reloadResourceCatalogue)
                {
                    var exeManager = CustomContainer.Get <IExecutionManager>();
                    if (exeManager != null && !exeManager.IsRefreshing)
                    {
                        exeManager.StartRefresh();
                        ResourceCatalog.Instance.Reload();
                        exeManager.StopRefresh();
                    }
                }
                return(serializer.SerializeToBuilder(GetExplorerItems(serializer, reloadResourceCatalogue)));
            }
            catch (Exception e)
            {
                Dev2Logger.Info("Fetch Explorer Items Error", e, GlobalConstants.WarewolfInfo);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
            finally
            {
                var exeManager = CustomContainer.Get <IExecutionManager>();
                exeManager?.StopRefresh();
            }
        }
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item = null;
            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException(nameof(values));
                }
                StringBuilder itemBeingDeleted;
                StringBuilder pathBeingDeleted = null;
                if (!values.TryGetValue("itemToDelete", out itemBeingDeleted))
                {
                    if (!values.TryGetValue("folderToDelete", out pathBeingDeleted))
                    {
                        throw new ArgumentException(string.Format(ErrorResource.IsBlank, "itemToDelete"));
                    }
                }

                IExplorerItem itemToDelete;
                if (itemBeingDeleted != null)
                {
                    itemToDelete = ServerExplorerRepo.Find(a => a.ResourceId.ToString() == itemBeingDeleted.ToString());
                    Dev2Logger.Info("Delete Item Service." + itemToDelete);
                    item = ServerExplorerRepo.DeleteItem(itemToDelete, GlobalConstants.ServerWorkspaceID);
                }
                else if (pathBeingDeleted != null)
                {
                    itemToDelete = new ServerExplorerItem
                    {
                        ResourceType = "Folder",
                        ResourcePath = pathBeingDeleted.ToString()
                    };

                    item = ServerExplorerRepo.DeleteItem(itemToDelete, GlobalConstants.ServerWorkspaceID);
                }
            }
            catch (Exception e)
            {
                Dev2Logger.Error("Delete Item Error", e);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            return(serializer.SerializeToBuilder(item));
        }
Example #10
0
        /// <summary>
        /// Executes the service
        /// </summary>
        /// <param name="values">The values.</param>
        /// <param name="theWorkspace">The workspace.</param>
        /// <returns></returns>
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            var serializer = new Dev2JsonSerializer();

            try
            {
                var res = new ExecuteMessage {
                    HasError = false
                };
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                if (!values.ContainsKey("versionInfo"))
                {
// ReSharper disable NotResolvedInText
                    throw new ArgumentNullException(ErrorResource.NoResourceIdInTheIncomingData);
// ReSharper restore NotResolvedInText
                }

                var version = serializer.Deserialize <IVersionInfo>(values["versionInfo"]);
                Dev2Logger.Info("Get Version. " + version);
                StringBuilder tmp;
                Guid          resourceId = Guid.Empty;
                values.TryGetValue("resourceId", out tmp);
                if (tmp != null)
                {
                    resourceId = Guid.Parse(tmp.ToString());
                }
                var resourcePath = ResourceCatalog.GetResourcePath(theWorkspace.ID, resourceId);
                var result       = ServerVersionRepo.GetVersion(version, resourcePath);
                res.Message.Append(result);
                Dev2XamlCleaner dev2XamlCleaner = new Dev2XamlCleaner();
                res.Message = dev2XamlCleaner.StripNaughtyNamespaces(res.Message);


                return(serializer.SerializeToBuilder(res));
            }
            catch (Exception e)
            {
                Dev2Logger.Error(e);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            Dev2Logger.Info("Fetch Explorer Items");

            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException(nameof(values));
                }
                StringBuilder tmp;
                values.TryGetValue("ReloadResourceCatalogue", out tmp);
                string reloadResourceCatalogueString = "";
                if (tmp != null)
                {
                    reloadResourceCatalogueString = tmp.ToString();
                }
                bool reloadResourceCatalogue = false;
                if (!string.IsNullOrEmpty(reloadResourceCatalogueString))
                {
                    if (!bool.TryParse(reloadResourceCatalogueString, out reloadResourceCatalogue))
                    {
                        reloadResourceCatalogue = false;
                    }
                }
                if (reloadResourceCatalogue)
                {
                    ResourceCatalog.Instance.Reload();
                }
                var item = ServerExplorerRepo.Load(GlobalConstants.ServerWorkspaceID, reloadResourceCatalogue);
                CompressedExecuteMessage message = new CompressedExecuteMessage();
                message.SetMessage(serializer.Serialize(item));
                return(serializer.SerializeToBuilder(message));
            }
            catch (Exception e)
            {
                Dev2Logger.Info("Fetch Explorer Items Error", e);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
        public override StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            Dev2Logger.Info("Fetch Duplicate ResourcesError", GlobalConstants.WarewolfInfo);
            var serializer = new Dev2JsonSerializer();

            try
            {
                var item    = ServerExplorerRepo.LoadDuplicate();
                var message = new CompressedExecuteMessage();
                message.SetMessage(serializer.Serialize(item));
                return(serializer.SerializeToBuilder(message));
            }
            catch (Exception e)
            {
                Dev2Logger.Info("Fetch Duplicate ResourcesError", e, GlobalConstants.WarewolfInfo);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
Example #13
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            Dev2Logger.Log.Info("Fetch Explorer Items");

            var serializer = new Dev2JsonSerializer();

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                var item = ServerExplorerRepo.Load(GlobalConstants.ServerWorkspaceID);
                return(serializer.SerializeToBuilder(item));
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Info("Fetch Explorer Items Error", e);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item;
            var serializer = new Dev2JsonSerializer();

            try
            {
                StringBuilder itemToBeRenamedPath;
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                StringBuilder itemToBeRenamed;
                StringBuilder newPath;
                if (!values.TryGetValue("itemToMove", out itemToBeRenamed))
                {
                    throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "itemToMove"));
                }
                if (!values.TryGetValue("newPath", out newPath))
                {
                    throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "newName"));
                }
                if (!values.TryGetValue("itemToBeRenamedPath", out itemToBeRenamedPath))
                {
                    throw new ArgumentException(string.Format(ErrorResource.ValueNotSupplied, "newName"));
                }


                var itemToMove = ServerExplorerRepo.Find(Guid.Parse(itemToBeRenamed.ToString())) ?? ServerExplorerRepo.Find(a => a.ResourcePath == itemToBeRenamedPath.ToString());
                Dev2Logger.Info($"Move Item. Path:{itemToBeRenamed} NewPath:{newPath}");
                item = ServerExplorerRepo.MoveItem(itemToMove, newPath.ToString(), GlobalConstants.ServerWorkspaceID);
            }
            catch (Exception e)
            {
                Dev2Logger.Error(e);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            return(serializer.SerializeToBuilder(item));
        }
Example #15
0
        /// <summary>
        /// Executes the service
        /// </summary>
        /// <param name="values">The values.</param>
        /// <param name="theWorkspace">The workspace.</param>
        /// <returns></returns>
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            var serializer = new Dev2JsonSerializer();

            try
            {
                var res = new ExecuteMessage {
                    HasError = false
                };
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                if (!values.ContainsKey("versionInfo"))
                {
// ReSharper disable NotResolvedInText
                    throw new ArgumentNullException("No resourceId was found in the incoming data");
// ReSharper restore NotResolvedInText
                }

                var version = serializer.Deserialize <IVersionInfo>(values["versionInfo"]);
                Dev2Logger.Log.Info("Get Version. " + version);
                var result = ServerVersionRepo.GetVersion(version);
                res.Message.Append(result);
                Dev2XamlCleaner dev2XamlCleaner = new Dev2XamlCleaner();
                res.Message = dev2XamlCleaner.StripNaughtyNamespaces(res.Message);


                return(serializer.SerializeToBuilder(res));
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Error(e);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            IExplorerRepositoryResult item;

            try
            {
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                if (theWorkspace == null)
                {
                    throw new ArgumentNullException("theWorkspace");
                }
                StringBuilder path;
                if (!values.TryGetValue("path", out path))
                {
                    throw new ArgumentException("path value not supplied.");
                }
                StringBuilder newPath;
                if (!values.TryGetValue("newPath", out newPath))
                {
                    throw new ArgumentException("newPath value not supplied.");
                }
                Dev2Logger.Log.Info(String.Format("Reanme Folder. Path:{0} NewPath:{1}", path, newPath));
                item = ServerExplorerRepository.Instance.RenameFolder(path.ToString(), newPath.ToString(), theWorkspace.ID);
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Error(e);
                item = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
            }
            var serializer = new Dev2JsonSerializer();

            return(serializer.SerializeToBuilder(item));
        }
Example #17
0
        Task <IExplorerRepositoryResult> ValueFunction(ExecStatus status)
        {
            IExplorerRepositoryResult result = new ExplorerRepositoryResult(status, "");

            return(Task.FromResult(result));
        }
Example #18
0
        /// <summary>
        /// Executes the service
        /// </summary>
        /// <param name="values">The values.</param>
        /// <param name="theWorkspace">The workspace.</param>
        /// <returns></returns>
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            var serializer = new Dev2JsonSerializer();

            try
            {
                var res = new ExecuteMessage {
                    HasError = false
                };
                if (values == null)
                {
                    throw new ArgumentNullException("values");
                }
                if (!values.ContainsKey("versionInfo"))
                {
// ReSharper disable NotResolvedInText
                    throw new ArgumentNullException("No resourceId was found in the incoming data");
// ReSharper restore NotResolvedInText
                }

                var version = serializer.Deserialize <IVersionInfo>(values["versionInfo"]);
                Dev2Logger.Log.Info("Get Version. " + version);
                var result   = ServerVersionRepo.GetVersion(version);
                var resource = Resources.GetResource(theWorkspace.ID, version.ResourceId);
                if (resource != null && resource.ResourceType == ResourceType.DbSource)
                {
                    res.Message.Append(result);
                }
                else
                {
                    var startIdx = result.IndexOf(PayloadStart, 0, false);

                    if (startIdx >= 0)
                    {
                        // remove beginning junk
                        startIdx += PayloadStart.Length;
                        result    = result.Remove(0, startIdx);

                        startIdx = result.IndexOf(PayloadEnd, 0, false);

                        if (startIdx > 0)
                        {
                            var len = result.Length - startIdx;
                            result = result.Remove(startIdx, len);

                            res.Message.Append(result.Unescape());
                        }
                    }
                    else
                    {
                        // handle services ;)
                        startIdx = result.IndexOf(AltPayloadStart, 0, false);
                        if (startIdx >= 0)
                        {
                            // remove begging junk
                            startIdx += AltPayloadStart.Length;
                            result    = result.Remove(0, startIdx);

                            startIdx = result.IndexOf(AltPayloadEnd, 0, false);

                            if (startIdx > 0)
                            {
                                var len = result.Length - startIdx;
                                result = result.Remove(startIdx, len);

                                res.Message.Append(result.Unescape());
                            }
                        }
                        else
                        {
                            // send the entire thing ;)
                            res.Message.Append(result);
                        }
                    }
                }

                Dev2XamlCleaner dev2XamlCleaner = new Dev2XamlCleaner();
                res.Message = dev2XamlCleaner.StripNaughtyNamespaces(res.Message);


                return(serializer.SerializeToBuilder(res));
            }
            catch (Exception e)
            {
                Dev2Logger.Log.Error(e);
                IExplorerRepositoryResult error = new ExplorerRepositoryResult(ExecStatus.Fail, e.Message);
                return(serializer.SerializeToBuilder(error));
            }
        }