Package org.apache.beam.sdk.io.cdap
Class Plugin<K,V>
java.lang.Object
org.apache.beam.sdk.io.cdap.Plugin<K,V>
Class wrapper for a CDAP plugin.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected SubmitterLifecycle
protected org.apache.hadoop.conf.Configuration
protected PluginConfig
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <K,
V> Plugin.Builder <K, V> builder()
Creates a plugin builder instance.static <K,
V> Plugin <K, V> createBatch
(Class<?> newPluginClass, Class<?> newFormatClass, Class<?> newFormatProviderClass) Creates a batch plugin instance.static <K,
V> Plugin <K, V> createStreaming
(Class<?> newPluginClass, SerializableFunction<V, Long> getOffsetFn, Class<? extends org.apache.spark.streaming.receiver.Receiver<V>> receiverClass) Creates a streaming plugin instance with default function for getting args forReceiver
.static <K,
V> Plugin <K, V> createStreaming
(Class<?> newPluginClass, SerializableFunction<V, Long> getOffsetFn, Class<? extends org.apache.spark.streaming.receiver.Receiver<V>> receiverClass, SerializableFunction<PluginConfig, Object[]> getReceiverArgsFromConfigFn) Creates a streaming plugin instance.abstract BatchContextImpl
Gets the context of a plugin.abstract Class
<?> Gets InputFormat or OutputFormat class for a plugin.abstract Class
<?> Gets InputFormatProvider or OutputFormatProvider class for a plugin.abstract SerializableFunction
<V, Long> Gets aSerializableFunction
that defines how to get record offset for CDAPPlugin
class.abstract SerializableFunction
<PluginConfig, Object[]> Gets aSerializableFunction
that defines how to get constructor arguments forReceiver
usingPluginConfig
.org.apache.hadoop.conf.Configuration
Gets a plugin Hadoop configuration.abstract Class
<?> Gets the main class of a plugin.Gets a plugin config.abstract PluginConstants.PluginType
Gets a plugin type.ReceiverBuilder
<V, ? extends org.apache.spark.streaming.receiver.Receiver<V>> Gets aReceiverBuilder
.Gets SparkReceiver
class for a CDAP plugin.static BatchContextImpl
initContext
(Class<?> cdapPluginClass) InitializesBatchContextImpl
for CDAP plugin.static PluginConstants.PluginType
initPluginType
(Class<?> pluginClass) Gets value of a plugin type.Gets value of a plugin type.void
CallsSubmitterLifecycle.prepareRun(Object)
method on thecdapPluginObj
passing needed configuration object as a parameter.withConfig
(PluginConfig pluginConfig) Sets a plugin config.withHadoopConfiguration
(Class<K> formatKeyClass, Class<V> formatValueClass) Sets a plugin Hadoop configuration.withHadoopConfiguration
(org.apache.hadoop.conf.Configuration hadoopConfiguration) Sets a plugin Hadoop configuration.
-
Field Details
-
pluginConfig
-
hadoopConfiguration
-
cdapPluginObj
-
-
Constructor Details
-
Plugin
public Plugin()
-
-
Method Details
-
getContext
Gets the context of a plugin. -
getPluginClass
Gets the main class of a plugin. -
getFormatClass
Gets InputFormat or OutputFormat class for a plugin. -
getFormatProviderClass
Gets InputFormatProvider or OutputFormatProvider class for a plugin. -
getReceiverClass
@Nullable public abstract Class<? extends org.apache.spark.streaming.receiver.Receiver<V>> getReceiverClass()Gets SparkReceiver
class for a CDAP plugin. -
getGetOffsetFn
Gets aSerializableFunction
that defines how to get record offset for CDAPPlugin
class. -
getGetReceiverArgsFromConfigFn
@Nullable public abstract SerializableFunction<PluginConfig,Object[]> getGetReceiverArgsFromConfigFn()Gets aSerializableFunction
that defines how to get constructor arguments forReceiver
usingPluginConfig
. -
withConfig
Sets a plugin config. -
getPluginConfig
Gets a plugin config. -
prepareRun
public void prepareRun()CallsSubmitterLifecycle.prepareRun(Object)
method on thecdapPluginObj
passing needed configuration object as a parameter. This method is needed for validating connection to the CDAP sink/source and performing initial tuning. -
withHadoopConfiguration
Sets a plugin Hadoop configuration. -
withHadoopConfiguration
public Plugin<K,V> withHadoopConfiguration(org.apache.hadoop.conf.Configuration hadoopConfiguration) Sets a plugin Hadoop configuration. -
getHadoopConfiguration
public org.apache.hadoop.conf.Configuration getHadoopConfiguration()Gets a plugin Hadoop configuration. -
getPluginType
Gets a plugin type. -
initPluginType
public static PluginConstants.PluginType initPluginType(Class<?> pluginClass) throws IllegalArgumentException Gets value of a plugin type.- Throws:
IllegalArgumentException
-
initContext
InitializesBatchContextImpl
for CDAP plugin. -
isUnbounded
Gets value of a plugin type. -
getReceiverBuilder
public ReceiverBuilder<V,? extends org.apache.spark.streaming.receiver.Receiver<V>> getReceiverBuilder()Gets aReceiverBuilder
. -
createBatch
public static <K,V> Plugin<K,V> createBatch(Class<?> newPluginClass, Class<?> newFormatClass, Class<?> newFormatProviderClass) Creates a batch plugin instance.- Parameters:
newPluginClass
- class of the CDAP pluginPlugin
.newFormatClass
- Hadoop Input or Output format class.newFormatProviderClass
- Hadoop Input or Output format provider class.
-
createStreaming
public static <K,V> Plugin<K,V> createStreaming(Class<?> newPluginClass, SerializableFunction<V, Long> getOffsetFn, Class<? extends org.apache.spark.streaming.receiver.Receiver<V>> receiverClass, SerializableFunction<PluginConfig, Object[]> getReceiverArgsFromConfigFn) Creates a streaming plugin instance.- Parameters:
newPluginClass
- class of the CDAP pluginPlugin
.getOffsetFn
-SerializableFunction
that defines how to get record offset for CDAPPlugin
class.receiverClass
- SparkReceiver
class for a CDAP plugin.getReceiverArgsFromConfigFn
-SerializableFunction
that defines how to get constructor arguments forReceiver
usingPluginConfig
.
-
createStreaming
public static <K,V> Plugin<K,V> createStreaming(Class<?> newPluginClass, SerializableFunction<V, Long> getOffsetFn, Class<? extends org.apache.spark.streaming.receiver.Receiver<V>> receiverClass) Creates a streaming plugin instance with default function for getting args forReceiver
.- Parameters:
newPluginClass
- class of the CDAP pluginPlugin
.getOffsetFn
-SerializableFunction
that defines how to get record offset for CDAPPlugin
class.receiverClass
- SparkReceiver
class for a CDAP plugin.
-
builder
Creates a plugin builder instance.
-