Пример #1
0
        public async Task ShareTaskAsync(string machineTarget, ViewTemplate viewTemplate, TaskInfo task, string sharedPath)
        {
            Logger.AddTrace("Sharing Task");

            ShareManagerServiceClient shareServices = new ShareManagerServiceClient();

            ObjectMapper mapper  = new ObjectMapper(typeof(TaskInfo), typeof(TaskInfoDTO));
            TaskInfoDTO  taskDTO = mapper.Map(task, false) as TaskInfoDTO;

            shareServices.ShareTask(Environment.MachineName, machineTarget, viewTemplate.Id, viewTemplate.Description, taskDTO);

            shareServices.Close();

            await this.UploadTaskFileAsync(machineTarget, task, sharedPath);
        }
        public void UnshareTask(string machineSource, string machineTarget, Guid viewId, TaskInfoDTO task)
        {
            //Find if already exists a task shared from the machine source to machine target.
            var sharedTask = _sharedTasks.Items.Where(t => t.ViewId == viewId && t.MachineSource.ToLower( ) == machineSource.ToLower( ) && t.MachineTarget.ToLower( ) == machineTarget.ToLower( ) && t.Task.Id == task.Id).FirstOrDefault( );

            if (sharedTask == null)
            {
                return;
            }

            _sharedTasks.Items.Remove(sharedTask);

            Serializer.Serialize <SharedTasksDTO>(_sharedTasks, _sharedTasksPath);
        }
        public void ShareTask(string machineSource, string machineTarget, Guid viewId, string viewDescription, TaskInfoDTO task)
        {
            //Find if already exists a task shared from the machine source to machine target.
            var sharedTask = _sharedTasks.Items.Where(t => t.ViewId == viewId && t.MachineSource.ToLower( ) == machineSource.ToLower( ) && t.MachineTarget.ToLower( ) == machineTarget.ToLower( ) && t.Task.Id == task.Id).FirstOrDefault( );

            if (sharedTask == null)
            {
                _sharedTasks.Items.Add(new SharedTaskDTO( )
                {
                    MachineSource = machineSource, MachineTarget = machineTarget, ViewId = viewId, ViewDescription = viewDescription, Task = task
                });
            }
            else
            {
                sharedTask.Task.Category    = task.Category;
                sharedTask.Task.Description = task.Description;
                sharedTask.Task.Parameters  = task.Parameters;
            }

            Serializer.Serialize <SharedTasksDTO>(_sharedTasks, _sharedTasksPath);
        }