@Override
public IMongoShellConfig build() {
IFeatureAwareVersion version = version().get();
Net net = net().get();
Timeout timeout = timeout().get();
IMongoCmdOptions cmdOptions=get(CMD_OPTIONS);
String pidFile = get(PID_FILE);
String name = get(JS_SCRIPT,null);
List<String> parameters = get(JS_SCRIPT_PARAMETERS,new ArrayList<String>());
if ((name==null) && (parameters.isEmpty())) {
throw new RuntimeException("you must set parameters or scriptName");
}
Long stopTimeoutInMillis = get(STOP_TIMEOUT_MILLIS);
return new ImmutableMongoShellConfig(version, net, timeout, cmdOptions, pidFile, name,
username().get(), password().get(), dbName().get(), stopTimeoutInMillis, parameters);
}