예제 #1
0
        public OpResult Delete(String tableName, String objectId)
        {
            String          operationResultId = opResultIdGenerator.GenerateOpResultId(OperationType.DELETE, tableName);
            OperationDelete operationDelete   = new OperationDelete(OperationType.DELETE, tableName, operationResultId, objectId);

            operations.AddLast(operationDelete);
            return(TransactionHelper.MakeOpResult(tableName, operationResultId, OperationType.DELETE));
        }
예제 #2
0
        public OpResult Create(String tableName, Dictionary <String, Object> objectMap)
        {
            if (objectMap == null)
            {
                throw new ArgumentException(ExceptionMessage.NULL_MAP);
            }

            TransactionHelper.MakeReferenceToValueFromOpResult(objectMap);
            String          operationResultId = opResultIdGenerator.GenerateOpResultId(OperationType.CREATE, tableName);
            OperationCreate operationCreate   = new OperationCreate(OperationType.CREATE, tableName, operationResultId, objectMap);

            operations.AddLast(operationCreate);
            return(TransactionHelper.MakeOpResult(tableName, operationResultId, OperationType.CREATE));
        }
예제 #3
0
        public OpResult Find(String tableName, DataQueryBuilder queryBuilder)
        {
            BackendlessDataQuery query = queryBuilder.Build();

            String        operationResultId = opResultIdGenerator.GenerateOpResultId(OperationType.FIND, tableName);
            OperationFind operationFind     = new OperationFind(OperationType.FIND, tableName, operationResultId, query);

            operations.AddLast(operationFind);

            return(TransactionHelper.MakeOpResult(tableName, operationResultId, OperationType.FIND));
        }
예제 #4
0
        private OpResult AddOperation(OperationType operationType, String parentTable, Object parentObject, String columnName,
                                      String whereClauseForChildren, Object children)
        {
            if (parentTable == null || parentTable == "")
            {
                throw new ArgumentException(ExceptionMessage.NULL_PARENT_TABLE_NAME);
            }

            if (columnName == null || columnName == "")
            {
                throw new ArgumentException(ExceptionMessage.NULL_RELATION_COLUMN_NAME);
            }

            String operationResultId = opResultIdGenerator.GenerateOpResultId(operationType, parentTable);

            Relation relation = new Relation();

            relation.ParentObject   = parentObject;
            relation.RelationColumn = columnName;
            relation.Conditional    = whereClauseForChildren;
            relation.Unconditional  = children;

            switch (operationType)
            {
            case OperationType.ADD_RELATION:
                operations.AddLast(new OperationAddRelation(operationType, parentTable, operationResultId, relation));
                break;

            case OperationType.SET_RELATION:
                operations.AddLast(new OperationSetRelation(operationType, parentTable, operationResultId, relation));
                break;

            case OperationType.DELETE_RELATION:
                operations.AddLast(new OperationDeleteRelation(operationType, parentTable, operationResultId, relation));
                break;
            }

            return(TransactionHelper.MakeOpResult(parentTable, operationResultId, operationType));
        }