mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-04-16 06:56:39 +02:00
java: adds actual generic templates
This commit is contained in:
parent
eb5d326a1e
commit
a3cd13b399
@ -24,6 +24,8 @@ import java.io.IOException;
|
|||||||
import org.msgpack.*;
|
import org.msgpack.*;
|
||||||
|
|
||||||
public class CollectionTemplate implements Template {
|
public class CollectionTemplate implements Template {
|
||||||
|
public static void load() { }
|
||||||
|
|
||||||
private Template elementTemplate;
|
private Template elementTemplate;
|
||||||
|
|
||||||
public CollectionTemplate(Template elementTemplate) {
|
public CollectionTemplate(Template elementTemplate) {
|
||||||
@ -72,5 +74,10 @@ public class CollectionTemplate implements Template {
|
|||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static {
|
||||||
|
TemplateRegistry.registerGeneric(Collection.class, new GenericTemplate1(CollectionTemplate.class));
|
||||||
|
TemplateRegistry.register(Collection.class, new CollectionTemplate(AnyTemplate.getInstance()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,6 +23,8 @@ import java.io.IOException;
|
|||||||
import org.msgpack.*;
|
import org.msgpack.*;
|
||||||
|
|
||||||
public class ListTemplate implements Template {
|
public class ListTemplate implements Template {
|
||||||
|
static void load() { }
|
||||||
|
|
||||||
private Template elementTemplate;
|
private Template elementTemplate;
|
||||||
|
|
||||||
public ListTemplate(Template elementTemplate) {
|
public ListTemplate(Template elementTemplate) {
|
||||||
@ -75,5 +77,10 @@ public class ListTemplate implements Template {
|
|||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static {
|
||||||
|
TemplateRegistry.registerGeneric(List.class, new GenericTemplate1(ListTemplate.class));
|
||||||
|
TemplateRegistry.register(List.class, new ListTemplate(AnyTemplate.getInstance()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,6 +23,8 @@ import java.io.IOException;
|
|||||||
import org.msgpack.*;
|
import org.msgpack.*;
|
||||||
|
|
||||||
public class MapTemplate implements Template {
|
public class MapTemplate implements Template {
|
||||||
|
static void load() { }
|
||||||
|
|
||||||
private Template keyTemplate;
|
private Template keyTemplate;
|
||||||
private Template valueTemplate;
|
private Template valueTemplate;
|
||||||
|
|
||||||
@ -86,5 +88,10 @@ public class MapTemplate implements Template {
|
|||||||
}
|
}
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static {
|
||||||
|
TemplateRegistry.registerGeneric(Map.class, new GenericTemplate2(MapTemplate.class));
|
||||||
|
TemplateRegistry.register(Map.class, new MapTemplate(AnyTemplate.getInstance(), AnyTemplate.getInstance()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user