Those values are finally stored to JSONObject. So StreamEventWork class or later needs to construct collection class from Provider object. I think it is high cost to do that everytime. Espacially this object is not changed once created.

I have one idea to add a method or interface like "toMap" to Provider class then use it as follows:

```java
Provider provider = new Provider(...);
Map<String, String> map = provider.toMap();
```

Do you think about my idea?