/** @return a new parser for space-separated parameter maps. */ public static SpaceSeparatedMapParser create() { return new SpaceSeparatedMapParser(); }
/** * Creates a job output from a command-line flag space-separated parameters map. * * @param ssm Space-separated parameters map from the command-line. * @return a job output configured from the command-line parameters. * @throws IOException on I/O error. */ public MapReduceJobOutput fromSpaceSeparatedMap(String ssm) throws IOException { final Map<String, String> params = SpaceSeparatedMapParser.create().parse(ssm); final String format = params.get(JobIOConfKeys.FORMAT_KEY); try { final MapReduceJobOutput output = createJobOutput(Format.parse(format)); output.initialize(params); return output; } catch (JobIOSpecParseException exn) { throw new IOException(String.format( "Invalid job output specification: '%s': %s", ssm, exn.getMessage()), exn); } }
/** * Creates a job input from a command-line flag space-separated parameters map. * * @param ssm Space-separated parameters map from the command-line. * @return a job input configured from the command-line parameters. * @throws IOException on I/O error. */ public MapReduceJobInput fromSpaceSeparatedMap(String ssm) throws IOException { final Map<String, String> params = SpaceSeparatedMapParser.create().parse(ssm); try { final MapReduceJobInput input = createJobInput(Format.parse(params.get(JobIOConfKeys.FORMAT_KEY))); input.initialize(params); return input; } catch (JobIOSpecParseException exn) { throw new IOException(String.format( "Invalid job input specification: '%s': %s", ssm, exn.getMessage()), exn); } }