package com.robotoworks.example.ghissues.net;
import com.robotoworks.mechanoid.net.JsonEntityWriterProvider;
import com.robotoworks.mechanoid.net.JsonEntityWriter;
import java.util.HashMap;
public class DefaultGithubClientWriterProvider implements JsonEntityWriterProvider {
private HashMap<Class<?>, JsonEntityWriter<?>> mMap = new HashMap<Class<?>, JsonEntityWriter<?>>();
public DefaultGithubClientWriterProvider(){
registerWriters(mMap);
}
@SuppressWarnings("unchecked")
@Override
public <T, R extends JsonEntityWriter<T>> R get(Class<T> entityType) {
return (R) mMap.get(entityType);
}
protected void registerWriters(HashMap<Class<?>, JsonEntityWriter<?>> map) {
map.put(Issue.class, new IssueWriter(this));
map.put(User.class, new UserWriter(this));
map.put(Label.class, new LabelWriter(this));
}
}