code: @Override
    public synchronized void init(PlayerConfig config) {
      super.init(config);
      this.fields = new HashMap<String, FieldType>();
      String fields = config.get(FIELDS_KEY);
      if (fields == null || "".equals(fields.trim())) {
        throw new IllegalArgumentException(this.getClass().getName() + " expects configuration property " + FIELDS_KEY);
      }
      String[] fieldsWithTypes = fields.split(" ");
      for (String fieldWithType : fieldsWithTypes) {
        String[] singleField = fieldWithType.split(":");
        if (singleField.length != 2) {
          continue;
        }
        FieldType type = getFieldType(singleField[1]);
        if (type != null) {
          this.fields.put(singleField[0], type);
        }
      }
    }
docs: (non-Javadoc)
  
  @see com.sematext.ag.source.dictionary.AbstractDictionaryEventSource#init(com.sematext.ag.PlayerConfig)