@Override public void reset(OCommandContext ctx) { result.clear(); next = 0; super.reset(ctx); executeInternal(); }
@Override public OResultSet execute(ODatabase db, Object[] args, OCommandContext parentCtx) { OBasicCommandContext ctx = new OBasicCommandContext(); if (parentCtx != null) { ctx.setParentWithoutOverridingChild(parentCtx); } ctx.setDatabase(db); Map<Object, Object> params = new HashMap<>(); if (args != null) { for (int i = 0; i < args.length; i++) { params.put(i, args[i]); } } ctx.setInputParameters(params); OInsertExecutionPlan executionPlan = (OInsertExecutionPlan) createExecutionPlan(ctx, false); executionPlan.executeInternal(); return new OLocalResultSet(executionPlan); }
@Override public OResultSet execute(ODatabase db, Object[] args, OCommandContext parentCtx) { OBasicCommandContext ctx = new OBasicCommandContext(); if (parentCtx != null) { ctx.setParentWithoutOverridingChild(parentCtx); } ctx.setDatabase(db); Map<Object, Object> params = new HashMap<>(); if (args != null) { for (int i = 0; i < args.length; i++) { params.put(i, args[i]); } } ctx.setInputParameters(params); OInsertExecutionPlan executionPlan = createExecutionPlan(ctx, false); executionPlan.executeInternal(); return new OLocalResultSet(executionPlan); }
@Override public OResultSet execute(ODatabase db, Object[] args, OCommandContext parentCtx) { OBasicCommandContext ctx = new OBasicCommandContext(); if (parentCtx != null) { ctx.setParentWithoutOverridingChild(parentCtx); } ctx.setDatabase(db); Map<Object, Object> params = new HashMap<>(); if (args != null) { for (int i = 0; i < args.length; i++) { params.put(i, args[i]); } } ctx.setInputParameters(params); OInsertExecutionPlan executionPlan = createExecutionPlan(ctx, false); executionPlan.executeInternal(); return new OLocalResultSet(executionPlan); }
@Override public Object execute(OResult iCurrentRecord, OCommandContext ctx) { if (expression != null) { return expression.execute(iCurrentRecord, ctx); } if (statement != null) { OInternalExecutionPlan execPlan = statement.createExecutionPlan(ctx, false); if (execPlan instanceof OInsertExecutionPlan) { ((OInsertExecutionPlan) execPlan).executeInternal(); } OLocalResultSet rs = new OLocalResultSet(execPlan); List<OResult> result = new ArrayList<>(); while (rs.hasNext()) { result.add(rs.next()); } // List<OResult> result = rs.stream().collect(Collectors.toList());//TODO streamed... rs.close(); return result; } return super.execute(iCurrentRecord, ctx); }
@Override public OResultSet execute(ODatabase db, Map params, OCommandContext parentCtx) { OBasicCommandContext ctx = new OBasicCommandContext(); if (parentCtx != null) { ctx.setParentWithoutOverridingChild(parentCtx); } ctx.setDatabase(db); ctx.setInputParameters(params); OInsertExecutionPlan executionPlan = createExecutionPlan(ctx, false); executionPlan.executeInternal(); return new OLocalResultSet(executionPlan); }
@Override public OResultSet execute(ODatabase db, Map params, OCommandContext parentCtx) { OBasicCommandContext ctx = new OBasicCommandContext(); if (parentCtx != null) { ctx.setParentWithoutOverridingChild(parentCtx); } ctx.setDatabase(db); ctx.setInputParameters(params); OInsertExecutionPlan executionPlan = (OInsertExecutionPlan) createExecutionPlan(ctx, false); executionPlan.executeInternal(); return new OLocalResultSet(executionPlan); }
@Override public OResultSet execute(ODatabase db, Map params, OCommandContext parentCtx) { OBasicCommandContext ctx = new OBasicCommandContext(); if (parentCtx != null) { ctx.setParentWithoutOverridingChild(parentCtx); } ctx.setDatabase(db); ctx.setInputParameters(params); OInsertExecutionPlan executionPlan = createExecutionPlan(ctx, false); executionPlan.executeInternal(); return new OLocalResultSet(executionPlan); }
@Override public OResultSet syncPull(OCommandContext ctx, int nRecords) throws OTimeoutException { if (!executed) { if (plan instanceof OInsertExecutionPlan) { ((OInsertExecutionPlan) plan).executeInternal(); } else if (plan instanceof ODeleteExecutionPlan) { ((ODeleteExecutionPlan) plan).executeInternal(); } else if (plan instanceof OUpdateExecutionPlan) { ((OUpdateExecutionPlan) plan).executeInternal(); } else if (plan instanceof ODDLExecutionPlan) { ((ODDLExecutionPlan) plan).executeInternal((OBasicCommandContext) ctx); } else if (plan instanceof OSingleOpExecutionPlan) { ((OSingleOpExecutionPlan) plan).executeInternal((OBasicCommandContext) ctx); } executed = true; } return plan.fetchNext(nRecords); }