/** * This constructor gives the option to only convert certain fields from the schema * @param inputSchema * @param conf * @param fieldsToConvert * @param requiredFields */ public CassandraSinkDataConverter(@NonNull final Schema inputSchema, @NonNull final Configuration conf, @NonNull final Optional<Set<String>> fieldsToConvert, @NonNull final List<String> requiredFields, @NonNull final TimestampInfo timestampInfo, @NonNull final ErrorExtractor errorExtractor) { super(conf, errorExtractor); if (fieldsToConvert.isPresent()) { validate(fieldsToConvert.get(), requiredFields); } this.inputSchemaJson = inputSchema.toString(); this.requiredFields = Collections.unmodifiableList(requiredFields); this.fieldsToConvert = fieldsToConvert; this.timestampInfo = timestampInfo; }