Commit b10a65483d709838fbe7d871b83fd5d42f2ef37e
1 parent
28d7fd3b
去除lombok,readme更新
Showing
9 changed files
with
214 additions
and
40 deletions
README.md
| @@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
| 8 | [](https://github.com/xia-chu/ZLMediaKit/pulls) | 8 | [](https://github.com/xia-chu/ZLMediaKit/pulls) |
| 9 | 9 | ||
| 10 | 10 | ||
| 11 | -WEB VIDEO PLATFORM銝銝芸鈭B28181-2016蝞勗像嚗提摰敹縑隞支挽憭恣AT蝛輸絲摨瑯之PCVRVR漣tsp/rtmp蝑蓮像嚗tsp/rtmp蝑瘚蓮像 | 11 | +WEB VIDEO PLATFORM銝銝芸鈭B28181-2016蝞勗像嚗提摰敹縑隞支挽憭恣AT蝛輸絲摨瑯之PCVR漣蒂/瘚/瘚蓮隞像 |
| 12 | 12 | ||
| 13 | 瘚鈭LMediaKit-https://github.com/xiongziliang/ZLMediaKit | 13 | 瘚鈭LMediaKit-https://github.com/xiongziliang/ZLMediaKit |
| 14 | 14 | ||
| @@ -31,11 +31,13 @@ WEB VIDEO PLATFORM銝銝芸鈭B28181-2016蝞勗 | @@ -31,11 +31,13 @@ WEB VIDEO PLATFORM銝銝芸鈭B28181-2016蝞勗 | ||
| 31 | https://gitee.com/pan648540858/wvp-GB28181-pro.git | 31 | https://gitee.com/pan648540858/wvp-GB28181-pro.git |
| 32 | 32 | ||
| 33 | # | 33 | # |
| 34 | - | ||
| 35 | - | ||
| 36 | - | ||
| 37 | - | ||
| 38 | - | 34 | + |
| 35 | + | ||
| 36 | + | ||
| 37 | + | ||
| 38 | + | ||
| 39 | + | ||
| 40 | + | ||
| 39 | 41 | ||
| 40 | # 1.0 蝖 | 42 | # 1.0 蝖 |
| 41 | 1. 閫; | 43 | 1. 閫; |
| @@ -79,7 +81,7 @@ https://gitee.com/pan648540858/wvp-GB28181-pro.git | @@ -79,7 +81,7 @@ https://gitee.com/pan648540858/wvp-GB28181-pro.git | ||
| 79 | - [X] 蝘餃雿蔭憭 | 81 | - [X] 蝘餃雿蔭憭 |
| 80 | - [X] 霅虫辣霈a | 82 | - [X] 霅虫辣霈a |
| 81 | - [X] 霅虫辣憭 | 83 | - [X] 霅虫辣憭 |
| 82 | - - [ ] 霈曉敶恥 | 84 | + - [X] 霈曉敶恥 |
| 83 | - [X] 霈曉敶憭 | 85 | - [X] 霈曉敶憭 |
| 84 | 16. 蝘餃雿蔭霂W蝷綽蔭辣霈曄蔭蝘餃雿蔭摮 | 86 | 16. 蝘餃雿蔭霂W蝷綽蔭辣霈曄蔭蝘餃雿蔭摮 |
| 85 | 87 | ||
| @@ -96,6 +98,9 @@ https://gitee.com/pan648540858/wvp-GB28181-pro.git | @@ -96,6 +98,9 @@ https://gitee.com/pan648540858/wvp-GB28181-pro.git | ||
| 96 | - [X] 撟喳靽⊥霂 | 98 | - [X] 撟喳靽⊥霂 |
| 97 | - [X] 撟喳餈 | 99 | - [X] 撟喳餈 |
| 98 | - [X] 瘥葵蝥扯像摰敶 | 100 | - [X] 瘥葵蝥扯像摰敶 |
| 101 | + - [X] 敶恥 | ||
| 102 | + - [X] 敶 | ||
| 103 | + - [X] GPS霈a嚗瘚 | ||
| 99 | - [X] 瘛餃TSP閫 | 104 | - [X] 瘛餃TSP閫 |
| 100 | - [X] 瘛餃 | 105 | - [X] 瘛餃 |
| 101 | - [X] 瘛餃TMP閫 | 106 | - [X] 瘛餃TMP閫 |
pom.xml
| @@ -253,10 +253,6 @@ | @@ -253,10 +253,6 @@ | ||
| 253 | <artifactId>spring-boot-starter-test</artifactId> | 253 | <artifactId>spring-boot-starter-test</artifactId> |
| 254 | <!-- <scope>test</scope>--> | 254 | <!-- <scope>test</scope>--> |
| 255 | </dependency> | 255 | </dependency> |
| 256 | - <dependency> | ||
| 257 | - <groupId>org.projectlombok</groupId> | ||
| 258 | - <artifactId>lombok</artifactId> | ||
| 259 | - </dependency> | ||
| 260 | </dependencies> | 256 | </dependencies> |
| 261 | 257 | ||
| 262 | 258 |
src/main/java/com/genersoft/iot/vmp/gb28181/event/platformNotRegister/PlatformCycleRegisterEventLister.java
| @@ -4,7 +4,8 @@ import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform; | @@ -4,7 +4,8 @@ import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform; | ||
| 4 | import com.genersoft.iot.vmp.gb28181.event.SipSubscribe; | 4 | import com.genersoft.iot.vmp.gb28181.event.SipSubscribe; |
| 5 | import com.genersoft.iot.vmp.gb28181.transmit.cmd.ISIPCommanderForPlatform; | 5 | import com.genersoft.iot.vmp.gb28181.transmit.cmd.ISIPCommanderForPlatform; |
| 6 | import com.genersoft.iot.vmp.storager.IVideoManagerStorager; | 6 | import com.genersoft.iot.vmp.storager.IVideoManagerStorager; |
| 7 | -import lombok.extern.slf4j.Slf4j; | 7 | +import org.slf4j.Logger; |
| 8 | +import org.slf4j.LoggerFactory; | ||
| 8 | import org.springframework.beans.factory.annotation.Autowired; | 9 | import org.springframework.beans.factory.annotation.Autowired; |
| 9 | import org.springframework.context.ApplicationListener; | 10 | import org.springframework.context.ApplicationListener; |
| 10 | import org.springframework.stereotype.Component; | 11 | import org.springframework.stereotype.Component; |
| @@ -12,9 +13,11 @@ import org.springframework.stereotype.Component; | @@ -12,9 +13,11 @@ import org.springframework.stereotype.Component; | ||
| 12 | import java.util.Timer; | 13 | import java.util.Timer; |
| 13 | import java.util.TimerTask; | 14 | import java.util.TimerTask; |
| 14 | 15 | ||
| 15 | -@Slf4j | ||
| 16 | @Component | 16 | @Component |
| 17 | public class PlatformCycleRegisterEventLister implements ApplicationListener<PlatformCycleRegisterEvent> { | 17 | public class PlatformCycleRegisterEventLister implements ApplicationListener<PlatformCycleRegisterEvent> { |
| 18 | + | ||
| 19 | + private final static Logger logger = LoggerFactory.getLogger(PlatformCycleRegisterEventLister.class); | ||
| 20 | + | ||
| 18 | @Autowired | 21 | @Autowired |
| 19 | private IVideoManagerStorager storager; | 22 | private IVideoManagerStorager storager; |
| 20 | @Autowired | 23 | @Autowired |
| @@ -22,10 +25,10 @@ public class PlatformCycleRegisterEventLister implements ApplicationListener<Pla | @@ -22,10 +25,10 @@ public class PlatformCycleRegisterEventLister implements ApplicationListener<Pla | ||
| 22 | 25 | ||
| 23 | @Override | 26 | @Override |
| 24 | public void onApplicationEvent(PlatformCycleRegisterEvent event) { | 27 | public void onApplicationEvent(PlatformCycleRegisterEvent event) { |
| 25 | - log.info("上级平台周期注册事件"); | 28 | + logger.info("上级平台周期注册事件"); |
| 26 | ParentPlatform parentPlatform = storager.queryParentPlatByServerGBId(event.getPlatformGbID()); | 29 | ParentPlatform parentPlatform = storager.queryParentPlatByServerGBId(event.getPlatformGbID()); |
| 27 | if (parentPlatform == null) { | 30 | if (parentPlatform == null) { |
| 28 | - log.info("[ 平台未注册事件 ] 平台已经删除!!! 平台国标ID:" + event.getPlatformGbID()); | 31 | + logger.info("[ 平台未注册事件 ] 平台已经删除!!! 平台国标ID:" + event.getPlatformGbID()); |
| 29 | return; | 32 | return; |
| 30 | } | 33 | } |
| 31 | Timer timer = new Timer(); | 34 | Timer timer = new Timer(); |
| @@ -36,7 +39,7 @@ public class PlatformCycleRegisterEventLister implements ApplicationListener<Pla | @@ -36,7 +39,7 @@ public class PlatformCycleRegisterEventLister implements ApplicationListener<Pla | ||
| 36 | timer.schedule(new TimerTask() { | 39 | timer.schedule(new TimerTask() { |
| 37 | @Override | 40 | @Override |
| 38 | public void run() { | 41 | public void run() { |
| 39 | - log.info("[平台注册]再次向平台注册,平台国标ID:" + event.getPlatformGbID()); | 42 | + logger.info("[平台注册]再次向平台注册,平台国标ID:" + event.getPlatformGbID()); |
| 40 | sipCommanderFroPlatform.register(parentPlatform, null, okEvent); | 43 | sipCommanderFroPlatform.register(parentPlatform, null, okEvent); |
| 41 | } | 44 | } |
| 42 | }, 15*1000 ,Long.parseLong(parentPlatform.getExpires())* 1000); | 45 | }, 15*1000 ,Long.parseLong(parentPlatform.getExpires())* 1000); |
src/main/java/com/genersoft/iot/vmp/utils/node/BaseNode.java
| 1 | package com.genersoft.iot.vmp.utils.node; | 1 | package com.genersoft.iot.vmp.utils.node; |
| 2 | 2 | ||
| 3 | import com.fasterxml.jackson.annotation.JsonInclude; | 3 | import com.fasterxml.jackson.annotation.JsonInclude; |
| 4 | -import lombok.Data; | ||
| 5 | 4 | ||
| 6 | import java.util.ArrayList; | 5 | import java.util.ArrayList; |
| 7 | import java.util.List; | 6 | import java.util.List; |
| @@ -10,7 +9,6 @@ import java.util.List; | @@ -10,7 +9,6 @@ import java.util.List; | ||
| 10 | * 节点基类 | 9 | * 节点基类 |
| 11 | * | 10 | * |
| 12 | */ | 11 | */ |
| 13 | -@Data | ||
| 14 | public class BaseNode<T> implements INode<T> { | 12 | public class BaseNode<T> implements INode<T> { |
| 15 | 13 | ||
| 16 | private static final long serialVersionUID = 1L; | 14 | private static final long serialVersionUID = 1L; |
| @@ -51,4 +49,34 @@ public class BaseNode<T> implements INode<T> { | @@ -51,4 +49,34 @@ public class BaseNode<T> implements INode<T> { | ||
| 51 | } | 49 | } |
| 52 | } | 50 | } |
| 53 | 51 | ||
| 52 | + @Override | ||
| 53 | + public int getId() { | ||
| 54 | + return id; | ||
| 55 | + } | ||
| 56 | + | ||
| 57 | + public void setId(int id) { | ||
| 58 | + this.id = id; | ||
| 59 | + } | ||
| 60 | + | ||
| 61 | + @Override | ||
| 62 | + public String getParentId() { | ||
| 63 | + return parentId; | ||
| 64 | + } | ||
| 65 | + | ||
| 66 | + public void setParentId(String parentId) { | ||
| 67 | + this.parentId = parentId; | ||
| 68 | + } | ||
| 69 | + | ||
| 70 | + @Override | ||
| 71 | + public List<T> getChildren() { | ||
| 72 | + return children; | ||
| 73 | + } | ||
| 74 | + | ||
| 75 | + public void setChildren(List<T> children) { | ||
| 76 | + this.children = children; | ||
| 77 | + } | ||
| 78 | + | ||
| 79 | + public void setHasChildren(Boolean hasChildren) { | ||
| 80 | + this.hasChildren = hasChildren; | ||
| 81 | + } | ||
| 54 | } | 82 | } |
src/main/java/com/genersoft/iot/vmp/utils/node/ForestNode.java
| 1 | package com.genersoft.iot.vmp.utils.node; | 1 | package com.genersoft.iot.vmp.utils.node; |
| 2 | 2 | ||
| 3 | -import lombok.Data; | ||
| 4 | -import lombok.EqualsAndHashCode; | ||
| 5 | 3 | ||
| 6 | 4 | ||
| 7 | /** | 5 | /** |
| 8 | * 森林节点类 | 6 | * 森林节点类 |
| 9 | * | 7 | * |
| 10 | */ | 8 | */ |
| 11 | -@Data | ||
| 12 | -@EqualsAndHashCode(callSuper = false) | ||
| 13 | public class ForestNode extends BaseNode<ForestNode> { | 9 | public class ForestNode extends BaseNode<ForestNode> { |
| 14 | 10 | ||
| 15 | private static final long serialVersionUID = 1L; | 11 | private static final long serialVersionUID = 1L; |
| @@ -25,4 +21,11 @@ public class ForestNode extends BaseNode<ForestNode> { | @@ -25,4 +21,11 @@ public class ForestNode extends BaseNode<ForestNode> { | ||
| 25 | this.content = content; | 21 | this.content = content; |
| 26 | } | 22 | } |
| 27 | 23 | ||
| 24 | + public Object getContent() { | ||
| 25 | + return content; | ||
| 26 | + } | ||
| 27 | + | ||
| 28 | + public void setContent(Object content) { | ||
| 29 | + this.content = content; | ||
| 30 | + } | ||
| 28 | } | 31 | } |
src/main/java/com/genersoft/iot/vmp/utils/node/TreeNode.java
| 1 | package com.genersoft.iot.vmp.utils.node; | 1 | package com.genersoft.iot.vmp.utils.node; |
| 2 | 2 | ||
| 3 | -import lombok.Data; | ||
| 4 | -import lombok.EqualsAndHashCode; | 3 | + |
| 5 | 4 | ||
| 6 | /** | 5 | /** |
| 7 | * 树型节点类 | 6 | * 树型节点类 |
| 8 | * | 7 | * |
| 9 | */ | 8 | */ |
| 10 | -@Data | ||
| 11 | -@EqualsAndHashCode(callSuper = false) | ||
| 12 | public class TreeNode extends BaseNode<TreeNode> { | 9 | public class TreeNode extends BaseNode<TreeNode> { |
| 13 | 10 | ||
| 14 | private static final long serialVersionUID = 1L; | 11 | private static final long serialVersionUID = 1L; |
| @@ -18,4 +15,28 @@ public class TreeNode extends BaseNode<TreeNode> { | @@ -18,4 +15,28 @@ public class TreeNode extends BaseNode<TreeNode> { | ||
| 18 | private String key; | 15 | private String key; |
| 19 | 16 | ||
| 20 | private String value; | 17 | private String value; |
| 18 | + | ||
| 19 | + public String getTitle() { | ||
| 20 | + return title; | ||
| 21 | + } | ||
| 22 | + | ||
| 23 | + public void setTitle(String title) { | ||
| 24 | + this.title = title; | ||
| 25 | + } | ||
| 26 | + | ||
| 27 | + public String getKey() { | ||
| 28 | + return key; | ||
| 29 | + } | ||
| 30 | + | ||
| 31 | + public void setKey(String key) { | ||
| 32 | + this.key = key; | ||
| 33 | + } | ||
| 34 | + | ||
| 35 | + public String getValue() { | ||
| 36 | + return value; | ||
| 37 | + } | ||
| 38 | + | ||
| 39 | + public void setValue(String value) { | ||
| 40 | + this.value = value; | ||
| 41 | + } | ||
| 21 | } | 42 | } |
src/main/java/com/genersoft/iot/vmp/vmanager/bean/DeviceChannelTree.java
| @@ -4,14 +4,10 @@ import com.fasterxml.jackson.annotation.JsonInclude; | @@ -4,14 +4,10 @@ import com.fasterxml.jackson.annotation.JsonInclude; | ||
| 4 | import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel; | 4 | import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel; |
| 5 | import com.genersoft.iot.vmp.utils.node.INode; | 5 | import com.genersoft.iot.vmp.utils.node.INode; |
| 6 | import io.swagger.annotations.ApiModel; | 6 | import io.swagger.annotations.ApiModel; |
| 7 | -import lombok.Data; | ||
| 8 | -import lombok.EqualsAndHashCode; | ||
| 9 | 7 | ||
| 10 | import java.util.ArrayList; | 8 | import java.util.ArrayList; |
| 11 | import java.util.List; | 9 | import java.util.List; |
| 12 | 10 | ||
| 13 | -@Data | ||
| 14 | -@EqualsAndHashCode(callSuper = true) | ||
| 15 | @ApiModel(value = "DeviceChannelTree对象", description = "DeviceChannelTree对象") | 11 | @ApiModel(value = "DeviceChannelTree对象", description = "DeviceChannelTree对象") |
| 16 | public class DeviceChannelTree extends DeviceChannel implements INode<DeviceChannelTree> { | 12 | public class DeviceChannelTree extends DeviceChannel implements INode<DeviceChannelTree> { |
| 17 | private static final long serialVersionUID = 1L; | 13 | private static final long serialVersionUID = 1L; |
| @@ -62,4 +58,64 @@ public class DeviceChannelTree extends DeviceChannel implements INode<DeviceChan | @@ -62,4 +58,64 @@ public class DeviceChannelTree extends DeviceChannel implements INode<DeviceChan | ||
| 62 | return this.hasChildren; | 58 | return this.hasChildren; |
| 63 | } | 59 | } |
| 64 | } | 60 | } |
| 61 | + | ||
| 62 | + @Override | ||
| 63 | + public int getId() { | ||
| 64 | + return id; | ||
| 65 | + } | ||
| 66 | + | ||
| 67 | + @Override | ||
| 68 | + public void setId(int id) { | ||
| 69 | + this.id = id; | ||
| 70 | + } | ||
| 71 | + | ||
| 72 | + @Override | ||
| 73 | + public String getParentId() { | ||
| 74 | + return parentId; | ||
| 75 | + } | ||
| 76 | + | ||
| 77 | + @Override | ||
| 78 | + public void setParentId(String parentId) { | ||
| 79 | + this.parentId = parentId; | ||
| 80 | + } | ||
| 81 | + | ||
| 82 | + public String getParentName() { | ||
| 83 | + return parentName; | ||
| 84 | + } | ||
| 85 | + | ||
| 86 | + public void setParentName(String parentName) { | ||
| 87 | + this.parentName = parentName; | ||
| 88 | + } | ||
| 89 | + | ||
| 90 | + public String getTitle() { | ||
| 91 | + return title; | ||
| 92 | + } | ||
| 93 | + | ||
| 94 | + public void setTitle(String title) { | ||
| 95 | + this.title = title; | ||
| 96 | + } | ||
| 97 | + | ||
| 98 | + public String getKey() { | ||
| 99 | + return key; | ||
| 100 | + } | ||
| 101 | + | ||
| 102 | + public void setKey(String key) { | ||
| 103 | + this.key = key; | ||
| 104 | + } | ||
| 105 | + | ||
| 106 | + public String getValue() { | ||
| 107 | + return value; | ||
| 108 | + } | ||
| 109 | + | ||
| 110 | + public void setValue(String value) { | ||
| 111 | + this.value = value; | ||
| 112 | + } | ||
| 113 | + | ||
| 114 | + public void setChildren(List<DeviceChannelTree> children) { | ||
| 115 | + this.children = children; | ||
| 116 | + } | ||
| 117 | + | ||
| 118 | + public void setHasChildren(Boolean hasChildren) { | ||
| 119 | + this.hasChildren = hasChildren; | ||
| 120 | + } | ||
| 65 | } | 121 | } |
src/main/java/com/genersoft/iot/vmp/vmanager/bean/DeviceChannelTreeNode.java
| 1 | package com.genersoft.iot.vmp.vmanager.bean; | 1 | package com.genersoft.iot.vmp.vmanager.bean; |
| 2 | 2 | ||
| 3 | import com.genersoft.iot.vmp.utils.node.TreeNode; | 3 | import com.genersoft.iot.vmp.utils.node.TreeNode; |
| 4 | -import lombok.Data; | ||
| 5 | -import lombok.EqualsAndHashCode; | ||
| 6 | 4 | ||
| 7 | -@Data | ||
| 8 | -@EqualsAndHashCode(callSuper = true) | ||
| 9 | public class DeviceChannelTreeNode extends TreeNode { | 5 | public class DeviceChannelTreeNode extends TreeNode { |
| 10 | 6 | ||
| 11 | private Integer status; | 7 | private Integer status; |
| @@ -17,4 +13,44 @@ public class DeviceChannelTreeNode extends TreeNode { | @@ -17,4 +13,44 @@ public class DeviceChannelTreeNode extends TreeNode { | ||
| 17 | private Double lng; | 13 | private Double lng; |
| 18 | 14 | ||
| 19 | private Double lat; | 15 | private Double lat; |
| 16 | + | ||
| 17 | + public Integer getStatus() { | ||
| 18 | + return status; | ||
| 19 | + } | ||
| 20 | + | ||
| 21 | + public void setStatus(Integer status) { | ||
| 22 | + this.status = status; | ||
| 23 | + } | ||
| 24 | + | ||
| 25 | + public String getDeviceId() { | ||
| 26 | + return deviceId; | ||
| 27 | + } | ||
| 28 | + | ||
| 29 | + public void setDeviceId(String deviceId) { | ||
| 30 | + this.deviceId = deviceId; | ||
| 31 | + } | ||
| 32 | + | ||
| 33 | + public String getChannelId() { | ||
| 34 | + return channelId; | ||
| 35 | + } | ||
| 36 | + | ||
| 37 | + public void setChannelId(String channelId) { | ||
| 38 | + this.channelId = channelId; | ||
| 39 | + } | ||
| 40 | + | ||
| 41 | + public Double getLng() { | ||
| 42 | + return lng; | ||
| 43 | + } | ||
| 44 | + | ||
| 45 | + public void setLng(Double lng) { | ||
| 46 | + this.lng = lng; | ||
| 47 | + } | ||
| 48 | + | ||
| 49 | + public Double getLat() { | ||
| 50 | + return lat; | ||
| 51 | + } | ||
| 52 | + | ||
| 53 | + public void setLat(Double lat) { | ||
| 54 | + this.lat = lat; | ||
| 55 | + } | ||
| 20 | } | 56 | } |
src/main/java/com/genersoft/iot/vmp/vmanager/bean/WVPResult.java
| 1 | package com.genersoft.iot.vmp.vmanager.bean; | 1 | package com.genersoft.iot.vmp.vmanager.bean; |
| 2 | 2 | ||
| 3 | -import lombok.AllArgsConstructor; | ||
| 4 | -import lombok.Data; | ||
| 5 | -import lombok.NoArgsConstructor; | ||
| 6 | 3 | ||
| 7 | -@Data | ||
| 8 | -@NoArgsConstructor | ||
| 9 | -@AllArgsConstructor | ||
| 10 | public class WVPResult<T> { | 4 | public class WVPResult<T> { |
| 11 | 5 | ||
| 6 | + public WVPResult() { | ||
| 7 | + } | ||
| 8 | + | ||
| 9 | + public WVPResult(int code, String msg, T data) { | ||
| 10 | + this.code = code; | ||
| 11 | + this.msg = msg; | ||
| 12 | + this.data = data; | ||
| 13 | + } | ||
| 14 | + | ||
| 12 | private int code; | 15 | private int code; |
| 13 | private String msg; | 16 | private String msg; |
| 14 | private T data; | 17 | private T data; |
| @@ -32,4 +35,27 @@ public class WVPResult<T> { | @@ -32,4 +35,27 @@ public class WVPResult<T> { | ||
| 32 | return fail(FAILED, msg); | 35 | return fail(FAILED, msg); |
| 33 | } | 36 | } |
| 34 | 37 | ||
| 38 | + public int getCode() { | ||
| 39 | + return code; | ||
| 40 | + } | ||
| 41 | + | ||
| 42 | + public void setCode(int code) { | ||
| 43 | + this.code = code; | ||
| 44 | + } | ||
| 45 | + | ||
| 46 | + public String getMsg() { | ||
| 47 | + return msg; | ||
| 48 | + } | ||
| 49 | + | ||
| 50 | + public void setMsg(String msg) { | ||
| 51 | + this.msg = msg; | ||
| 52 | + } | ||
| 53 | + | ||
| 54 | + public T getData() { | ||
| 55 | + return data; | ||
| 56 | + } | ||
| 57 | + | ||
| 58 | + public void setData(T data) { | ||
| 59 | + this.data = data; | ||
| 60 | + } | ||
| 35 | } | 61 | } |