diff --git a/java/src/main/java/org/msgpack/template/CollectionTemplate.java b/java/src/main/java/org/msgpack/template/CollectionTemplate.java index 1621636e..b88500c3 100644 --- a/java/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/java/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -24,6 +24,8 @@ import java.io.IOException; import org.msgpack.*; public class CollectionTemplate implements Template { + public static void load() { } + private Template elementTemplate; public CollectionTemplate(Template elementTemplate) { @@ -72,5 +74,10 @@ public class CollectionTemplate implements Template { } return list; } + + static { + TemplateRegistry.registerGeneric(Collection.class, new GenericTemplate1(CollectionTemplate.class)); + TemplateRegistry.register(Collection.class, new CollectionTemplate(AnyTemplate.getInstance())); + } } diff --git a/java/src/main/java/org/msgpack/template/ListTemplate.java b/java/src/main/java/org/msgpack/template/ListTemplate.java index f3bd2738..b0a24f3e 100644 --- a/java/src/main/java/org/msgpack/template/ListTemplate.java +++ b/java/src/main/java/org/msgpack/template/ListTemplate.java @@ -23,6 +23,8 @@ import java.io.IOException; import org.msgpack.*; public class ListTemplate implements Template { + static void load() { } + private Template elementTemplate; public ListTemplate(Template elementTemplate) { @@ -75,5 +77,10 @@ public class ListTemplate implements Template { } return list; } + + static { + TemplateRegistry.registerGeneric(List.class, new GenericTemplate1(ListTemplate.class)); + TemplateRegistry.register(List.class, new ListTemplate(AnyTemplate.getInstance())); + } } diff --git a/java/src/main/java/org/msgpack/template/MapTemplate.java b/java/src/main/java/org/msgpack/template/MapTemplate.java index eeccd48b..9815e3b6 100644 --- a/java/src/main/java/org/msgpack/template/MapTemplate.java +++ b/java/src/main/java/org/msgpack/template/MapTemplate.java @@ -23,6 +23,8 @@ import java.io.IOException; import org.msgpack.*; public class MapTemplate implements Template { + static void load() { } + private Template keyTemplate; private Template valueTemplate; @@ -86,5 +88,10 @@ public class MapTemplate implements Template { } return map; } + + static { + TemplateRegistry.registerGeneric(Map.class, new GenericTemplate2(MapTemplate.class)); + TemplateRegistry.register(Map.class, new MapTemplate(AnyTemplate.getInstance(), AnyTemplate.getInstance())); + } }