private Properties getSparkModuleProperties(SparkStreamingSupport processor) {
		Properties sparkConfigs = new Properties();
		Method[] methods = processor.getClass().getDeclaredMethods();
		for (Method method : methods) {
			SparkConfig sparkConfig = method.getAnnotation(SparkConfig.class);
			if (sparkConfig != null) {
				try {
					if (method.getReturnType().equals(Properties.class)) {
						sparkConfigs.putAll((Properties) method.invoke(processor));
					}
					else {
						logger.warn("@SparkConfig annotated method should return java.util.Properties type. " +
								"Ignoring the method " + method.getName());
					}
				}
				catch (InvocationTargetException ise) {
					// ignore.
				}
				catch (IllegalAccessException ise) {
					// ignore.
				}
			}
		}
		return sparkConfigs;
	}
Retrieve spark configuration properties from the {@link org.springframework.xd.spark.streaming.java.Processor} implementation.
This method uses {@link SparkConfig} annotation to derive the {@link Properties} returned
from the annotated methods.

@param processor the spark streaming processor
@return the spark configuration properties (if defined) or empty properties
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/plugins/spark/streaming/SparkStreamingPlugin.java