public MultiOperationResponse DeleteMultiple([Required, FromBody] MultiOperationRequest request)
        {
            var errors = ForeachMultiple(request.lites, lite =>
                                         OperationLogic.ServiceDelete(lite, request.GetOperationSymbol(lite.EntityType), request.args));

            return(new MultiOperationResponse(errors));
        }
Exemple #2
0
        public MultiOperationResponse DeleteMultiple([Required, FromBody] MultiOperationRequest request)
        {
            if (request.Setters.HasItems())
            {
                var errors = ForeachMultiple(request.Lites, lite =>
                {
                    var entity = lite.RetrieveAndForget();

                    MultiSetter.SetSetters(entity, request.Setters, PropertyRoute.Root(entity.GetType()));

                    var op = request.GetOperationSymbol(entity.GetType());

                    OperationLogic.ServiceDelete(entity, op, request.ParseArgs(op));
                });

                return(new MultiOperationResponse(errors));
            }
            else
            {
                var errors = ForeachMultiple(request.Lites, lite =>
                {
                    var op = request.GetOperationSymbol(lite.EntityType);
                    OperationLogic.ServiceDelete(lite, op, request.ParseArgs(op));
                });

                return(new MultiOperationResponse(errors));
            }
        }
Exemple #3
0
        public ActionResult Delete()
        {
            if (this.IsLite())
            {
                Lite <Entity> lite = this.ExtractLite <Entity>();

                OperationLogic.ServiceDelete(lite, this.GetOperationKeyAssert(lite.EntityType), null);

                return(this.DefaultDelete(lite.EntityType));
            }
            else
            {
                MappingContext context = this.UntypedExtractEntity().UntypedApplyChanges(this).UntypedValidate();

                Entity entity = (Entity)context.UntypedValue;

                try
                {
                    OperationLogic.ServiceDelete(entity, this.GetOperationKeyAssert(entity.GetType()), null);
                }
                catch (IntegrityCheckException e)
                {
                    context.ImportErrors(e.Errors);
                    return(context.ToJsonModelState());
                }

                return(this.DefaultDelete(entity.GetType()));
            }
        }
        public MultiOperationResponse DeleteMultiple(MultiOperationRequest request)
        {
            var errors = ForeachMultiple(request.lites, lite =>
                                         OperationLogic.ServiceDelete(lite, request.operarionSymbol, request.args));

            return(new MultiOperationResponse {
                errors = errors
            });
        }
Exemple #5
0
        public ActionResult DeleteMultiple()
        {
            OperationSymbol operationSymbol = this.GetOperationKeyAssert();

            var lites = this.ParseLiteKeys <Entity>();

            foreach (var item in lites)
            {
                OperationLogic.ServiceDelete(item, operationSymbol);
            }

            return(null);
        }
Exemple #6
0
        public ActionResult DeleteMultiple()
        {
            var             lites           = this.ParseLiteKeys <Entity>();
            OperationSymbol operationSymbol = lites.Select(a => a.EntityType).Distinct().Select(type => this.GetOperationKeyAssert(type)).Distinct().SingleEx();


            foreach (var item in lites)
            {
                try
                {
                    OperationLogic.ServiceDelete(item, operationSymbol);
                }
                catch (Exception ex)
                {
                    ex.LogException();
                }
            }

            return(null);
        }
Exemple #7
0
        public void Execute(ExecutingProcess executingProcess)
        {
            PackageOperationEntity package = (PackageOperationEntity)executingProcess.Data;

            OperationSymbol operationSymbol = package.Operation;

            var args = package.OperationArgs;

            executingProcess.ForEachLine(package.Lines().Where(a => a.FinishTime == null), line =>
            {
                OperationType operationType = OperationLogic.OperationType(line.Target.GetType(), operationSymbol);

                switch (operationType)
                {
                case OperationType.Execute:
                    OperationLogic.ServiceExecute(line.Target, operationSymbol, args);
                    break;

                case OperationType.Delete:
                    OperationLogic.ServiceDelete(line.Target, operationSymbol, args);
                    break;

                case OperationType.ConstructorFrom:
                    {
                        var result  = OperationLogic.ServiceConstructFrom(line.Target, operationSymbol, args);
                        line.Result = result.ToLite();
                    }
                    break;

                default:
                    throw new InvalidOperationException("Unexpected operation type {0}".FormatWith(operationType));
                }

                line.FinishTime = TimeZoneManager.Now;
                line.Save();
            });
        }
 public void DeleteLite([Required, FromBody] LiteOperationRequest request)
 {
     OperationLogic.ServiceDelete(request.lite, request.GetOperationSymbol(request.lite.EntityType), request.args);
 }
 public void DeleteEntity([Required, FromBody] EntityOperationRequest request)
 {
     OperationLogic.ServiceDelete(request.entity, request.GetOperationSymbol(request.entity.GetType()), request.args);
 }
Exemple #10
0
 public void Delete(IEntity entity, OperationSymbol operationSymbol, params object[] args)
 {
     Execute(MethodInfo.GetCurrentMethod(), operationSymbol.ToString(),
             () => OperationLogic.ServiceDelete((Entity)entity, operationSymbol, args));
 }
Exemple #11
0
        public void DeleteEntity([Required, FromBody] EntityOperationRequest request)
        {
            var op = request.GetOperationSymbol(request.entity.GetType());

            OperationLogic.ServiceDelete(request.entity, op, request.ParseArgs(op));
        }
Exemple #12
0
        public void DeleteLite([Required, FromBody] LiteOperationRequest request)
        {
            var op = request.GetOperationSymbol(request.lite.EntityType);

            OperationLogic.ServiceDelete(request.lite, op, request.ParseArgs(op));
        }
 public void DeleteLite(LiteOperationRequest request)
 {
     OperationLogic.ServiceDelete(request.lite, request.operarionSymbol, request.args);
 }
 public void DeleteEntity(EntityOperationRequest request)
 {
     OperationLogic.ServiceDelete(request.entity, request.operarionSymbol, request.args);
 }