@Override public Set<ProgramType> getSupportedTypesForProvider(ProgramRuntimeProvider programRuntimeProvider) { // See if the provide supports the required program type ProgramRuntimeProvider.SupportedProgramType supportedTypes = programRuntimeProvider.getClass().getAnnotation(ProgramRuntimeProvider.SupportedProgramType.class); ImmutableSet.Builder<ProgramType> types = ImmutableSet.builder(); for (ProgramType programType : supportedTypes.value()) { if (programRuntimeProvider.isSupported(programType, cConf)) { types.add(programType); } } return types.build(); } }
@Override public Set<ProgramType> getSupportedTypesForProvider(ProgramRuntimeProvider programRuntimeProvider) { // See if the provide supports the required program type ProgramRuntimeProvider.SupportedProgramType supportedTypes = programRuntimeProvider.getClass().getAnnotation(ProgramRuntimeProvider.SupportedProgramType.class); ImmutableSet.Builder<ProgramType> types = ImmutableSet.builder(); for (ProgramType programType : supportedTypes.value()) { if (programRuntimeProvider.isSupported(programType, cConf)) { types.add(programType); } } return types.build(); } }
/** * Spark2 program runtime provider. */ @ProgramRuntimeProvider.SupportedProgramType(ProgramType.SPARK) public class Spark2ProgramRuntimeProvider extends SparkProgramRuntimeProvider { public Spark2ProgramRuntimeProvider() { super(SparkCompat.SPARK2_2_11); } }
/** * Spark2 program runtime provider. */ @ProgramRuntimeProvider.SupportedProgramType(ProgramType.SPARK) public class Spark2ProgramRuntimeProvider extends SparkProgramRuntimeProvider { public Spark2ProgramRuntimeProvider() { super(SparkCompat.SPARK2_2_11); } }
/** * Spark1 program runtime provider. */ @ProgramRuntimeProvider.SupportedProgramType(ProgramType.SPARK) public class Spark1ProgramRuntimeProvider extends SparkProgramRuntimeProvider { public Spark1ProgramRuntimeProvider() { super(SparkCompat.SPARK1_2_10); } }