Initial Netty + JSON Deserializer + all the enhancements happening in many private...
[ovsdb.git] / ovsdb / src / main / java / org / opendaylight / ovsdb / plugin / MessageMapper.java
1 package org.opendaylight.ovsdb.plugin;\r
2 \r
3 import org.slf4j.Logger;\r
4 import org.slf4j.LoggerFactory;\r
5 \r
6 import java.util.HashMap;\r
7 import java.util.Map;\r
8 \r
9 public class MessageMapper {\r
10 \r
11     private static final Logger logger = LoggerFactory.getLogger(MessageMapper.class);\r
12 \r
13     private static MessageMapper mapper = null;\r
14     Map<Long, Class<?>> responseMapper = new HashMap<Long, Class<?>>();\r
15     Map<String, Class<?>> requestMapper = new HashMap<String, Class<?>>();\r
16 \r
17     private MessageMapper() {\r
18     }\r
19 \r
20     public static MessageMapper getMapper() {\r
21         if (mapper == null) mapper = new MessageMapper();\r
22         return mapper;\r
23     }\r
24 \r
25     public void map(long id, Class<?> rClass) {\r
26         responseMapper.put(Long.valueOf(id), rClass);\r
27     }\r
28 \r
29     public Class<?> pop(long id) {\r
30         return responseMapper.remove(id);\r
31     }\r
32 \r
33     public void map(String type, Class<?> rClass) {\r
34         requestMapper.put(type, rClass);\r
35     }\r
36 \r
37     public Class<?> get(String type) {\r
38         return requestMapper.get(type);\r
39     }\r
40 }\r