operation.blocking(false);
/** * Declares the invoke operation. * * @param configDeclarer the soap config declarer * @param loader a {@link ClassTypeLoader} to load some parameters types. * @param soapErrors the {@link ErrorModel}s that this operation can throw. */ void declare(ConfigurationDeclarer configDeclarer, ClassTypeLoader loader, Set<ErrorModel> soapErrors) { ReflectionCache reflectionCache = new ReflectionCache(); OperationDeclarer operation = configDeclarer.withOperation(OPERATION_NAME) .describedAs(OPERATION_DESCRIPTION) .requiresConnection(true) .blocking(true) .withModelProperty(new ComponentExecutorModelProperty(new SoapOperationExecutorFactory())) .withModelProperty(new ConnectivityModelProperty(ForwardingSoapClient.class)); soapErrors.forEach(operation::withErrorModel); declareMetadata(operation, loader); declareOutput(operation, loader); declareMetadataKeyParameters(operation, loader, reflectionCache); declareRequestParameters(operation, loader); }
private void processBlockingOperation(boolean supportsConfig, MethodElement operationMethod, OperationDeclarer operation) { operation.blocking(true); operation.withOutputAttributes().ofType(operationMethod.getAttributesMetadataType()); final MetadataType outputType = operationMethod.getReturnMetadataType(); if (isAutoPaging(operationMethod)) { operation.supportsStreaming(true).withOutput().ofType(outputType); addPagedOperationModelProperty(operationMethod, operation, supportsConfig); processPagingTx(operation, operationMethod); } else { operation.withOutput().ofType(outputType); handleByteStreaming(operationMethod, operation, outputType); } }
operation.blocking(false);
private void processBlockingOperation(boolean supportsConfig, MethodElement operationMethod, OperationDeclarer operation) { operation.blocking(true); operation.withOutputAttributes().ofType(operationMethod.getAttributesMetadataType()); final MetadataType outputType = operationMethod.getReturnMetadataType(); if (isAutoPaging(operationMethod)) { operation.supportsStreaming(true).withOutput().ofType(outputType); addPagedOperationModelProperty(operationMethod, operation, supportsConfig); processPagingTx(operation, operationMethod); } else { operation.withOutput().ofType(outputType); handleByteStreaming(operationMethod, operation, outputType); } }