Imported Upstream version 0.9.2
[platform/upstream/iotivity.git] / android / android_api / base / src / main / java / org / iotivity / base / OcPlatformInfo.java
1 /*
2  * //******************************************************************
3  * //
4  * // Copyright 2015 Intel Corporation.
5  * //
6  * //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
7  * //
8  * // Licensed under the Apache License, Version 2.0 (the "License");
9  * // you may not use this file except in compliance with the License.
10  * // You may obtain a copy of the License at
11  * //
12  * //      http://www.apache.org/licenses/LICENSE-2.0
13  * //
14  * // Unless required by applicable law or agreed to in writing, software
15  * // distributed under the License is distributed on an "AS IS" BASIS,
16  * // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * // See the License for the specific language governing permissions and
18  * // limitations under the License.
19  * //
20  * //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
21  */
22
23 package org.iotivity.base;
24
25 import java.lang.Error;
26
27 public class OcPlatformInfo {
28
29     private String platformID;
30     private String manufacturerName;
31     private String manufacturerUrl;
32     private String modelNumber;
33     private String dateOfManufacture;
34     private String platformVersion;
35     private String operatingSystemVersion;
36     private String hardwareVersion;
37     private String firmwareVersion;
38     private String supportUrl;
39     private String systemTime;
40
41     // construct OcPlatformInfo with mandatory fields which cannot be null
42     // manufacturerName cannot be > 16 chars
43     // manufacturerUrl cannot be > 32 chars
44     protected OcPlatformInfo(String platformID, String manufacturerName,
45                              String manufacturerUrl) throws OcException {
46         ErrorCode result = validatePlatformInfo(platformID, manufacturerName, manufacturerUrl);
47         if (ErrorCode.OK == result) {
48             this.platformID = platformID;
49             this.manufacturerName = manufacturerName;
50             this.manufacturerUrl = manufacturerUrl;
51         } else {
52             throw new OcException(result, result.getDescription());
53         }
54     }
55
56     public ErrorCode validatePlatformInfo(String platformID, String manufacturerName,
57                                           String manufacturerUrl) {
58         // checks to see if the mandatory fields have non-null values or not
59         if (platformID == null || platformID.isEmpty()) return ErrorCode.INVALID_PLATFORM_INFO_PLATFORMID;
60         if (manufacturerName == null || manufacturerName.isEmpty() ||
61                 manufacturerName.length() > OcStackConfig.MAX_MANUFACTURER_NAME_LENGTH)
62             return ErrorCode.INVALID_PLATFORM_INFO_MANUFACTURER_NAME;
63         if (manufacturerUrl == null || manufacturerUrl.isEmpty() ||
64                 manufacturerUrl.length() > OcStackConfig.MAX_MANUFACTURER_URL_LENGTH)
65             return ErrorCode.INVALID_PLATFORM_INFO_PLATFORMID_MANUFACTURER_URL;
66         return ErrorCode.OK;
67     }
68
69     public String getPlatformID() {
70         return platformID;
71     }
72
73     public void setPlatformID(String platformID) {
74         this.platformID = platformID;
75     }
76
77     public String getManufacturerName() {
78         return manufacturerName;
79     }
80
81     public void setManufacturerName(String manufacturerName) {
82         this.manufacturerName = manufacturerName;
83     }
84
85     public String getManufacturerUrl() {
86         return manufacturerUrl;
87     }
88
89     public void setManufacturerUrl(String manufacturerUrl) {
90         this.manufacturerUrl = manufacturerUrl;
91     }
92
93     public String getModelNumber() {
94         return modelNumber;
95     }
96
97     public void setModelNumber(String modelNumber) {
98         this.modelNumber = modelNumber;
99     }
100
101     public String getDateOfManufacture() {
102         return dateOfManufacture;
103     }
104
105     public void setDateOfManufacture(String dateOfManufacture) {
106         this.dateOfManufacture = dateOfManufacture;
107     }
108
109     public String getPlatformVersion() {
110         return platformVersion;
111     }
112
113     public void setPlatformVersion(String platformVersion) {
114         this.platformVersion = platformVersion;
115     }
116
117     public String getOperatingSystemVersion() {
118         return operatingSystemVersion;
119     }
120
121     public void setOperatingSystemVersion(String operatingSystemVersion) {
122         this.operatingSystemVersion = operatingSystemVersion;
123     }
124
125     public String getHardwareVersion() {
126         return hardwareVersion;
127     }
128
129     public void setHardwareVersion(String hardwareVersion) {
130         this.hardwareVersion = hardwareVersion;
131     }
132
133     public String getFirmwareVersion() {
134         return firmwareVersion;
135     }
136
137     public void setFirmwareVersion(String firmwareVersion) {
138         this.firmwareVersion = firmwareVersion;
139     }
140
141     public String getSupportUrl() {
142         return supportUrl;
143     }
144
145     public void setSupportUrl(String supportUrl) {
146         this.supportUrl = supportUrl;
147     }
148
149     public String getSystemTime() {
150         return systemTime;
151     }
152
153     public void setSystemTime(String systemTime) {
154         this.systemTime = systemTime;
155     }
156 }