public Term GenerateTerm(IQueryConverter queryConverter) { var replaceTerm = new Term() { type = Term.TermType.REPLACE, }; replaceTerm.args.Add(getTerm.GenerateTerm(queryConverter)); replaceTerm.args.Add(new Term() { type = Term.TermType.DATUM, datum = queryConverter.Get <T>().ConvertObject(newObject) }); AddOptionalArguments(replaceTerm); if (nonAtomic) { replaceTerm.optargs.Add(new Term.AssocPair() { key = "non_atomic", val = new Term() { type = Term.TermType.DATUM, datum = new Datum() { type = Datum.DatumType.R_BOOL, r_bool = nonAtomic } } }); } return(replaceTerm); }
public Term GenerateTerm(IQueryConverter queryConverter) { var deleteTerm = new Term() { type = Term.TermType.DELETE, }; if (getTerm != null) { deleteTerm.args.Add(getTerm.GenerateTerm(queryConverter)); } else if (tableTerm != null) { deleteTerm.args.Add(tableTerm.GenerateTerm(queryConverter)); } AddOptionalArguments(deleteTerm); return(deleteTerm); }
public Term GenerateTerm(IDatumConverterFactory datumConverterFactory) { var deleteTerm = new Term() { type = Term.TermType.DELETE, }; if (getTerm != null) { deleteTerm.args.Add(getTerm.GenerateTerm(datumConverterFactory)); } else if (tableTerm != null) { deleteTerm.args.Add(tableTerm.GenerateTerm(datumConverterFactory)); } AddOptionalArguments(deleteTerm); return(deleteTerm); }
public Term GenerateTerm(IQueryConverter queryConverter) { var updateTerm = new Term() { type = Term.TermType.UPDATE, }; if (singleObjectTerm != null) { updateTerm.args.Add(singleObjectTerm.GenerateTerm(queryConverter)); } else { updateTerm.args.Add(sequenceTerm.GenerateTerm(queryConverter)); } updateTerm.args.Add(ExpressionUtils.CreateFunctionTerm <T, T>(queryConverter, updateExpression)); AddOptionalArguments(updateTerm); if (nonAtomic) { updateTerm.optargs.Add(new Term.AssocPair() { key = "non_atomic", val = new Term() { type = Term.TermType.DATUM, datum = new Datum() { type = Datum.DatumType.R_BOOL, r_bool = nonAtomic } } }); } return(updateTerm); }