Пример #1
0
  @Override
  public Optional<SimpleData> build(final DataView container) {

    Optional<Integer> testInt = container.getInt(new DataQuery("myInt"));
    if (!testInt.isPresent()) {
      throw new InvalidDataException("Missing important data: {myInt}");
    }
    Optional<Double> testDouble = container.getDouble(new DataQuery("myDouble"));
    if (!testDouble.isPresent()) {
      throw new InvalidDataException("Missing important data: {myDouble}");
    }
    Optional<String> testString = container.getString(new DataQuery("myString"));
    if (!testString.isPresent()) {
      throw new InvalidDataException("Missing important data: {myString}");
    }
    Optional<List<String>> testList = container.getStringList(new DataQuery("myStringList"));
    if (!testList.isPresent()) {
      throw new InvalidDataException("Missing important data: {myStringList}");
    }

    return Optional.of(
        new SimpleData(testInt.get(), testDouble.get(), testString.get(), testList.get()));
  }