private boolean checkOptimization(ServiceContract serviceContract, Set<PhysicalOperationDefinition> operationDefinitions) { if (serviceContract.isRemotable()) { return false; } for (PhysicalOperationDefinition operation : operationDefinitions) { if (!operation.getInterceptors().isEmpty()) { return false; } } return true; }
private void evaluateWireCommand(WireCommand wireCommand, Map<String, CompensatableCommand> commands, Map<String, List<Contribution>> contributions, String zone, GenerationType type) throws GenerationException { for (PhysicalOperationDefinition operation : wireCommand.getPhysicalWireDefinition().getOperations()) { for (PhysicalInterceptorDefinition interceptor : operation.getInterceptors()) { URI contributionUri = interceptor.getPolicyClassLoaderId(); Contribution contribution = store.find(contributionUri); if (findContribution(contribution, contributions)) { // the interceptor is bundled with user contribution so skip continue; } AbstractExtensionsCommand command = getExtensionsCommand(commands, zone, type); if (!command.getExtensionUris().contains(contributionUri) && !Names.HOST_CONTRIBUTION.equals(contributionUri) && !Names.BOOT_CONTRIBUTION.equals(contributionUri)) { command.addExtensionUri(contributionUri); } commands.put(zone, command); addDependencies(contribution, command); } } }
Wire createWire(PhysicalWireDefinition definition) throws BuilderException { Wire wire = new WireImpl(); for (PhysicalOperationDefinition operation : definition.getOperations()) { InvocationChain chain = new InvocationChainImpl(operation); for (PhysicalInterceptorDefinition interceptorDefinition : operation.getInterceptors()) { InterceptorBuilder<? super PhysicalInterceptorDefinition> builder = getBuilder(interceptorDefinition); Interceptor interceptor = builder.build(interceptorDefinition); chain.addInterceptor(interceptor); } wire.addInvocationChain(chain); } processTransform(wire, definition); return wire; }