public WriteHandler getWriteHandler(String tag, Object o) {
        Map<String, WriteHandler> h = lookup(chainedLookup, getClassOrNull(o));
        if (h == null)
            return null;
        Map.Entry<String, WriteHandler> taggedWriter = soloEntry(h);
        if (tag != null && !tag.equals(taggedWriter.getKey()) && !taggedWriter.getKey().equals("any")) {
            return null;
        } else {
            return taggedWriter.getValue();
        }
    }