@Override protected WebSocketService getWebSocketService(final ProcessContext context) { return context.getProperty(PROP_WEBSOCKET_SERVER_SERVICE) .asControllerService(WebSocketService.class); }
@OnScheduled public void onEnabled(ProcessContext context) { clientService = context.getProperty(CLIENT_SERVICE).asControllerService(MongoDBClientService.class); writerFactory = context.getProperty(WRITER_FACTORY).asControllerService(RecordSetWriterFactory.class); }
/** * Get credentials provider using the {@link AWSCredentialsProviderService} * @param context the process context * @return AWSCredentialsProvider the credential provider * @see <a href="http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/AWSCredentialsProvider.html">AWSCredentialsProvider</a> */ protected AWSCredentialsProvider getCredentialsProvider(final ProcessContext context) { final AWSCredentialsProviderService awsCredentialsProviderService = context.getProperty(AWS_CREDENTIALS_PROVIDER_SERVICE).asControllerService(AWSCredentialsProviderService.class); return awsCredentialsProviderService.getCredentialsProvider(); }
/** * Retrieve credentials from the {@link GCPCredentialsService} attached to this processor. * @param context the process context provided on scheduling the processor. * @return GoogleCredentials for the processor to access. * @see <a href="https://developers.google.com/api-client-library/java/google-api-java-client/reference/1.20.0/com/google/api/client/googleapis/auth/oauth2/GoogleCredential">AuthCredentials</a> */ protected GoogleCredentials getGoogleCredentials(final ProcessContext context) { final GCPCredentialsService gcpCredentialsService = context.getProperty(GCP_CREDENTIALS_PROVIDER_SERVICE).asControllerService(GCPCredentialsService.class); return gcpCredentialsService.getGoogleCredentials(); }
@OnEnabled public void onEnabled(final ConfigurationContext context) { final Map<String,DBCPService> serviceMap = new HashMap<>(); for (final PropertyDescriptor descriptor : context.getProperties().keySet()) { if (descriptor.isDynamic()) { final DBCPService dbcpService = context.getProperty(descriptor).asControllerService(DBCPService.class); serviceMap.put(descriptor.getName(), dbcpService); } } dbcpServiceMap = Collections.unmodifiableMap(serviceMap); }
@OnEnabled public void onEnabled(final ConfigurationContext context) { cache = context.getProperty(PROP_DISTRIBUTED_CACHE_SERVICE).asControllerService(DistributedMapCacheClient.class); charset = Charset.forName(context.getProperty(CHARACTER_ENCODING).getValue()); }
@Override protected Collection<ValidationResult> customValidate(final ValidationContext validationContext) { final List<ValidationResult> results = new ArrayList<>(); final String clientAuth = validationContext.getProperty(CLIENT_AUTH).getValue(); final SSLContextService sslContextService = validationContext.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); if (sslContextService != null && StringUtils.isBlank(clientAuth)) { results.add(new ValidationResult.Builder() .explanation("Client Auth must be provided when using TLS/SSL") .valid(false).subject("Client Auth").build()); } return results; }
@Override protected Collection<ValidationResult> customValidate(final ValidationContext context) { final Collection<ValidationResult> results = new ArrayList<>(); final String protocol = context.getProperty(PROTOCOL).getValue(); final SSLContextService sslContextService = context.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); if (UDP_VALUE.getValue().equals(protocol) && sslContextService != null) { results.add(new ValidationResult.Builder() .explanation("SSL can not be used with UDP") .valid(false).subject("SSL Context").build()); } return results; }
@Override protected Collection<ValidationResult> customValidate(final ValidationContext context) { final Collection<ValidationResult> results = new ArrayList<>(); final String protocol = context.getProperty(PROTOCOL).getValue(); final SSLContextService sslContextService = context.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); if (UDP_VALUE.getValue().equals(protocol) && sslContextService != null) { results.add(new ValidationResult.Builder() .explanation("SSL can not be used with UDP") .valid(false).subject("SSL Context").build()); } return results; }
protected Set<SchemaField> getSuppliedSchemaFields(final ValidationContext validationContext) { final String accessStrategyValue = validationContext.getProperty(getSchemaAcessStrategyDescriptor()).getValue(); final SchemaRegistry schemaRegistry = validationContext.getProperty(SCHEMA_REGISTRY).asControllerService(SchemaRegistry.class); final SchemaAccessStrategy accessStrategy = getSchemaAccessStrategy(accessStrategyValue, schemaRegistry, validationContext); if (accessStrategy == null) { return EnumSet.noneOf(SchemaField.class); } final Set<SchemaField> suppliedFields = accessStrategy.getSuppliedSchemaFields(); return suppliedFields; }
@Override protected Collection<ValidationResult> customValidate(final ValidationContext validationContext) { final List<ValidationResult> results = new ArrayList<>(); final SSLContextService sslContextService = validationContext.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); if (sslContextService != null && sslContextService.isTrustStoreConfigured() == false) { results.add(new ValidationResult.Builder() .explanation("The context service must have a truststore configured for the lumberjack forwarder client to work correctly") .valid(false).subject(SSL_CONTEXT_SERVICE.getName()).build()); } return results; }
@OnEnabled public void configure(final ConfigurationContext context) { clusterService = context.getProperty(COUCHBASE_CLUSTER_SERVICE).asControllerService(CouchbaseClusterControllerService.class); final String bucketName = context.getProperty(BUCKET_NAME).evaluateAttributeExpressions().getValue(); bucket = clusterService.openBucket(bucketName); }
@OnEnabled public void onEnabled(final ConfigurationContext context) throws InitializationException { super.onEnabled(context); readerFactory = context.getProperty(RECORD_READER).asControllerService(RecordReaderFactory.class); documentType = DocumentType.valueOf(context.getProperty(DOCUMENT_TYPE).getValue()); }
@OnEnabled public void storeSchemaAccessStrategy(final ConfigurationContext context) { this.configurationContext = context; final SchemaRegistry schemaRegistry = context.getProperty(SCHEMA_REGISTRY).asControllerService(SchemaRegistry.class); final PropertyDescriptor descriptor = getSchemaAcessStrategyDescriptor(); final String schemaAccess = context.getProperty(descriptor).getValue(); this.schemaAccessStrategy = getSchemaAccessStrategy(schemaAccess, schemaRegistry, context); }
@OnEnabled public void onConfigured(final ConfigurationContext context) throws InitializationException{ hBaseClientService = context.getProperty(HBASE_CLIENT_SERVICE).asControllerService(HBaseClientService.class); hBaseCacheTableName = context.getProperty(HBASE_CACHE_TABLE_NAME).evaluateAttributeExpressions().getValue(); hBaseColumnFamily = context.getProperty(HBASE_COLUMN_FAMILY).evaluateAttributeExpressions().getValue(); hBaseColumnQualifier = context.getProperty(HBASE_COLUMN_QUALIFIER).evaluateAttributeExpressions().getValue(); hBaseColumnFamilyBytes = hBaseColumnFamily.getBytes(StandardCharsets.UTF_8); hBaseColumnQualifierBytes = hBaseColumnQualifier.getBytes(StandardCharsets.UTF_8); authorizations = VisibilityLabelUtils.getAuthorizations(context); }
@OnEnabled public void onConfigured(final ConfigurationContext context) throws InitializationException{ hBaseClientService = context.getProperty(HBASE_CLIENT_SERVICE).asControllerService(HBaseClientService.class); hBaseCacheTableName = context.getProperty(HBASE_CACHE_TABLE_NAME).evaluateAttributeExpressions().getValue(); hBaseColumnFamily = context.getProperty(HBASE_COLUMN_FAMILY).evaluateAttributeExpressions().getValue(); hBaseColumnQualifier = context.getProperty(HBASE_COLUMN_QUALIFIER).evaluateAttributeExpressions().getValue(); hBaseColumnFamilyBytes = hBaseColumnFamily.getBytes(StandardCharsets.UTF_8); hBaseColumnQualifierBytes = hBaseColumnQualifier.getBytes(StandardCharsets.UTF_8); authorizations = VisibilityLabelUtils.getAuthorizations(context); }
@OnEnabled public void onEnabled(final ConfigurationContext context) throws InitializationException, IOException, InterruptedException { this.hBaseClientService = context.getProperty(HBASE_CLIENT_SERVICE).asControllerService(HBaseClientService.class); this.tableName = context.getProperty(TABLE_NAME).getValue(); this.columns = getColumns(context.getProperty(RETURN_COLUMNS).getValue()); this.charset = Charset.forName(context.getProperty(CHARSET).getValue()); this.authorizations = VisibilityLabelUtils.getAuthorizations(context); }
@OnScheduled public void setup(ProcessContext context) { // If the query is not set, then an incoming flow file is needed. Otherwise fail the initialization if (!context.getProperty(SQL_SELECT_QUERY).isSet() && !context.hasIncomingConnection()) { final String errorString = "Either the Select Query must be specified or there must be an incoming connection " + "providing flowfile(s) containing a SQL select query"; getLogger().error(errorString); throw new ProcessException(errorString); } dbcpService = context.getProperty(DBCP_SERVICE).asControllerService(DBCPService.class); }
protected ChannelSender createSender(final ProcessContext context) throws IOException { final int port = context.getProperty(PORT).evaluateAttributeExpressions().asInteger(); final String host = context.getProperty(HOSTNAME).evaluateAttributeExpressions().getValue(); final String protocol = context.getProperty(PROTOCOL).getValue(); final int maxSendBuffer = context.getProperty(MAX_SOCKET_SEND_BUFFER_SIZE).evaluateAttributeExpressions().asDataSize(DataUnit.B).intValue(); final int timeout = context.getProperty(TIMEOUT).evaluateAttributeExpressions().asTimePeriod(TimeUnit.MILLISECONDS).intValue(); final SSLContextService sslContextService = context.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); return createSender(sslContextService, protocol, host, port, maxSendBuffer, timeout); }
private void binFlowFile(final ProcessContext context, final FlowFile flowFile, final ProcessSession session, final RecordBinManager binManager, final boolean block) { final RecordReaderFactory readerFactory = context.getProperty(RECORD_READER).asControllerService(RecordReaderFactory.class); try (final InputStream in = session.read(flowFile); final RecordReader reader = readerFactory.createRecordReader(flowFile, in, getLogger())) { final RecordSchema schema = reader.getSchema(); final String groupId = getGroupId(context, flowFile, schema, session); getLogger().debug("Got Group ID {} for {}", new Object[] {groupId, flowFile}); binManager.add(groupId, flowFile, reader, session, block); } catch (MalformedRecordException | IOException | SchemaNotFoundException e) { throw new ProcessException(e); } }