/** * Creates batch command. */ @Override protected HystrixCommand<List<Object>> createCommand( Collection<CollapsedRequest<Object, Object>> collapsedRequests) { return new BatchHystrixCommand(HystrixCommandBuilderFactory.getInstance().create(metaHolder, collapsedRequests)); }
private Object[] toArgs(Collection<HystrixCollapser.CollapsedRequest<Object, Object>> requests) { return new Object[]{collect(requests)}; }
/** * {@inheritDoc} */ @Override @SuppressWarnings("unchecked") protected List<Object> run() throws Exception { Object[] args = toArgs(getCollapsedRequests()); return (List) process(args); }
@Override Object execute() { return getCommandAction().executeWithArgs(getExecutionType(), args); } });
@Override Object execute() { MetaHolder metaHolder = commandAction.getMetaHolder(); Object[] args = toArgs(getCollapsedRequests()); args = createArgsForFallback(args, metaHolder, getExecutionException()); return commandAction.executeWithArgs(commandAction.getMetaHolder().getFallbackExecutionType(), args); } });
@Override @SuppressWarnings("unchecked") protected List<Object> getFallback() { if (getFallbackAction() != null) { final CommandAction commandAction = getFallbackAction(); try { return (List<Object>) process(new Action() { @Override Object execute() { MetaHolder metaHolder = commandAction.getMetaHolder(); Object[] args = toArgs(getCollapsedRequests()); args = createArgsForFallback(args, metaHolder, getExecutionException()); return commandAction.executeWithArgs(commandAction.getMetaHolder().getFallbackExecutionType(), args); } }); } catch (Throwable e) { LOGGER.error(FallbackErrorMessageBuilder.create() .append(commandAction, e).build()); throw new FallbackInvocationException(unwrapCause(e)); } } else { return super.getFallback(); } }
private Object process(final Object[] args) throws Exception { return process(new Action() { @Override Object execute() { return getCommandAction().executeWithArgs(getExecutionType(), args); } }); }
@Override Object execute() { return getCommandAction().executeWithArgs(getExecutionType(), args); } });
@Override Object execute() { MetaHolder metaHolder = commandAction.getMetaHolder(); Object[] args = toArgs(getCollapsedRequests()); args = createArgsForFallback(args, metaHolder, getExecutionException()); return commandAction.executeWithArgs(commandAction.getMetaHolder().getFallbackExecutionType(), args); } });
@Override @SuppressWarnings("unchecked") protected List<Object> getFallback() { if (getFallbackAction() != null) { final CommandAction commandAction = getFallbackAction(); try { return (List<Object>) process(new Action() { @Override Object execute() { MetaHolder metaHolder = commandAction.getMetaHolder(); Object[] args = toArgs(getCollapsedRequests()); args = createArgsForFallback(args, metaHolder, getExecutionException()); return commandAction.executeWithArgs(commandAction.getMetaHolder().getFallbackExecutionType(), args); } }); } catch (Throwable e) { LOGGER.error(FallbackErrorMessageBuilder.create() .append(commandAction, e).build()); throw new FallbackInvocationException(unwrapCause(e)); } } else { return super.getFallback(); } }
private Object process(final Object[] args) throws Exception { return process(new Action() { @Override Object execute() { return getCommandAction().executeWithArgs(getExecutionType(), args); } }); }
/** * {@inheritDoc} */ @Override @SuppressWarnings("unchecked") protected List<Object> run() throws Exception { Object[] args = toArgs(getCollapsedRequests()); return (List) process(args); }
/** * Creates batch command. */ @Override protected HystrixCommand<List<Object>> createCommand( Collection<CollapsedRequest<Object, Object>> collapsedRequests) { return new BatchHystrixCommand(HystrixCommandBuilderFactory.getInstance().create(metaHolder, collapsedRequests)); }
private Object[] toArgs(Collection<HystrixCollapser.CollapsedRequest<Object, Object>> requests) { return new Object[]{collect(requests)}; }