class DistinctColorListImpl implements DistinctColor {

    @Override
    public String getOrCreateColor(EditorClientId editorClientId) {
        if (colorMap.containsKey(editorClientId)) {
            return colorMap.get(editorClientId);
        }

        String color = nextColor();
        colorMap.put(editorClientId, color);
        return color;
    }

    @Inject public  DistinctColorListImpl(@Named("distinctColor") List<String> colorList);

}