98981a30f10987a903d2f84a5bdf6e9dcb87b2cd
[dmaap/datarouter.git] / datarouter-prov / src / main / java / org / onap / dmaap / datarouter / provisioning / beans / SubDelivery.java
1 /*******************************************************************************\r
2  * ============LICENSE_START==================================================\r
3  * * org.onap.dmaap\r
4  * * ===========================================================================\r
5  * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
6  * * ===========================================================================\r
7  * * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * * you may not use this file except in compliance with the License.\r
9  * * You may obtain a copy of the License at\r
10  * *\r
11  *  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  * *\r
13  *  * Unless required by applicable law or agreed to in writing, software\r
14  * * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * * See the License for the specific language governing permissions and\r
17  * * limitations under the License.\r
18  * * ============LICENSE_END====================================================\r
19  * *\r
20  * * ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
21  * *\r
22  ******************************************************************************/\r
23 \r
24 \r
25 package org.onap.dmaap.datarouter.provisioning.beans;\r
26 \r
27 import java.sql.ResultSet;\r
28 import java.sql.SQLException;\r
29 import java.util.Objects;\r
30 \r
31 import org.json.JSONObject;\r
32 \r
33 /**\r
34  * The representation of Subscription delivery information.  This includes the URL to deliver to,\r
35  * login and password, and whether to use the "HTTP 100-continue" feature for this subscription.\r
36  *\r
37  * @author Robert Eby\r
38  * @version $Id: SubDelivery.java,v 1.2 2013/06/20 14:11:05 eby Exp $\r
39  */\r
40 public class SubDelivery implements JSONable {\r
41     private String url;\r
42     private String user;\r
43     private String password;\r
44     private boolean use100;\r
45 \r
46     public SubDelivery() {\r
47         this("", "", "", false);\r
48     }\r
49 \r
50     public SubDelivery(String url, String user, String password, boolean use100) {\r
51         this.url = url;\r
52         this.user = user;\r
53         this.password = password;\r
54         this.use100 = use100;\r
55     }\r
56 \r
57     public SubDelivery(ResultSet rs) throws SQLException {\r
58         this.url = rs.getString("DELIVERY_URL");\r
59         this.user = rs.getString("DELIVERY_USER");\r
60         this.password = rs.getString("DELIVERY_PASSWORD");\r
61         this.use100 = rs.getBoolean("DELIVERY_USE100");\r
62 \r
63     }\r
64 \r
65     public String getUrl() {\r
66         return url;\r
67     }\r
68 \r
69     public void setUrl(String url) {\r
70         this.url = url;\r
71     }\r
72 \r
73     public String getUser() {\r
74         return user;\r
75     }\r
76 \r
77     public void setUser(String user) {\r
78         this.user = user;\r
79     }\r
80 \r
81     public String getPassword() {\r
82         return password;\r
83     }\r
84 \r
85     public void setPassword(String password) {\r
86         this.password = password;\r
87     }\r
88 \r
89     public boolean isUse100() {\r
90         return use100;\r
91     }\r
92 \r
93     public void setUse100(boolean use100) {\r
94         this.use100 = use100;\r
95     }\r
96 \r
97     @Override\r
98     public JSONObject asJSONObject() {\r
99         JSONObject jo = new JSONObject();\r
100         jo.put("url", url);\r
101         jo.put("user", user);\r
102         jo.put("password", password);\r
103         jo.put("use100", use100);\r
104         return jo;\r
105     }\r
106 \r
107     @Override\r
108     public boolean equals(Object obj) {\r
109         if (!(obj instanceof SubDelivery))\r
110             return false;\r
111         SubDelivery os = (SubDelivery) obj;\r
112         if (!url.equals(os.url))\r
113             return false;\r
114         if (!user.equals(os.user))\r
115             return false;\r
116         if (!password.equals(os.password))\r
117             return false;\r
118         if (use100 != os.use100)\r
119             return false;\r
120         return true;\r
121     }\r
122 \r
123     @Override\r
124     public int hashCode() {\r
125         return Objects.hash(url, user, password, use100);\r
126     }\r
127 }\r