From caacb1c90003921101fa269b6a48fc58251e4c39 Mon Sep 17 00:00:00 2001 From: "tcdlpds@gmail.com" Date: Tue, 7 Apr 2020 23:34:17 +0530 Subject: [PATCH] Improve policy UI config bean structure --- .../mgt/common/policy/mgt/ui/Column.java | 38 ++++++++++++++ .../device/mgt/common/policy/mgt/ui/Item.java | 24 +++++++++ .../common/policy/mgt/ui/Notification.java | 38 ++++++++++++++ .../mgt/common/policy/mgt/ui/SubContent.java | 7 +++ .../mgt/common/policy/mgt/ui/Table.java | 35 +++++++++++++ .../common/policy/mgt/ui/TimeSelector.java | 50 +++++++++++++++++++ 6 files changed, 192 insertions(+) create mode 100644 components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Column.java create mode 100644 components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Notification.java create mode 100644 components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Table.java create mode 100644 components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/TimeSelector.java diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Column.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Column.java new file mode 100644 index 0000000000..9c81780e6c --- /dev/null +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Column.java @@ -0,0 +1,38 @@ +/* Copyright (c) 2020, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved. + * + * Entgra (Pvt) Ltd. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.wso2.carbon.device.mgt.common.policy.mgt.ui; + +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlRootElement; + +@XmlRootElement(name = "Column") +public class Column { + + private String name; + private String valueType; + + @XmlAttribute(name = "name", required = true) + public String getName() { return name; } + + public void setName(String name) { this.name = name; } + + @XmlAttribute(name = "valueType", required = true) + public String getValueType() { return valueType; } + + public void setValueType(String valueType) { this.valueType = valueType; } +} diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Item.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Item.java index e41d5a7ff9..eccd9717cf 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Item.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Item.java @@ -29,9 +29,13 @@ public class Item { private String value; private boolean isRequired; private String subTitle; + private ConditionList conditionList; + private Notification notification; private Checkbox checkbox; private Select select; private Input input; + private TimeSelector timeSelector; + private Table table; @XmlElement(name = "Label") public String getLabel() { @@ -83,6 +87,16 @@ public class Item { public void setSubTitle(String subTitle) { this.subTitle = subTitle; } + @XmlElement(name = "ConditionList") + public ConditionList getConditionList() { return conditionList; } + + public void setConditionList(ConditionList conditionList) { this.conditionList = conditionList; } + + @XmlElement(name = "Notification") + public Notification getNotification() { return notification; } + + public void setNotification(Notification notification) { this.notification = notification; } + @XmlElement(name = "Checkbox") public Checkbox getCheckbox() { return checkbox; @@ -109,4 +123,14 @@ public class Item { public void setInput(Input input) { this.input = input; } + + @XmlElement(name = "TimeSelector") + public TimeSelector getTimeSelector() { return timeSelector; } + + public void setTimeSelector(TimeSelector timeSelector) { this.timeSelector = timeSelector; } + + @XmlElement(name = "Table") + public Table getTable() { return table; } + + public void setTable(Table table) { this.table = table; } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Notification.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Notification.java new file mode 100644 index 0000000000..31560dd931 --- /dev/null +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Notification.java @@ -0,0 +1,38 @@ +/* Copyright (c) 2020, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved. + * + * Entgra (Pvt) Ltd. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.wso2.carbon.device.mgt.common.policy.mgt.ui; + +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; + +@XmlRootElement(name = "Notification") +public class Notification { + + private String type; + private String value; + + @XmlElement(name = "Type") + public String getType() { return type; } + + public void setType(String type) { this.type = type; } + + @XmlElement(name = "Value") + public String getValue() { return value; } + + public void setValue(String value) { this.value = value; } +} diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/SubContent.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/SubContent.java index 29f033b2e8..b3981ee7d4 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/SubContent.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/SubContent.java @@ -29,6 +29,7 @@ public class SubContent { private String key; private List items; private ConditionList conditionList; + private List subContents; @XmlAttribute(name = "key", required = true) public String getKey() { @@ -57,4 +58,10 @@ public class SubContent { public void setConditionList(ConditionList conditionList) { this.conditionList = conditionList; } + + @XmlElementWrapper(name = "SubContents") + @XmlElement(name = "SubContent") + public List getSubContents() { return subContents; } + + public void setSubContents(List subContents) { this.subContents = subContents; } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Table.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Table.java new file mode 100644 index 0000000000..4083b845a2 --- /dev/null +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/Table.java @@ -0,0 +1,35 @@ +/* Copyright (c) 2020, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved. + * + * Entgra (Pvt) Ltd. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.wso2.carbon.device.mgt.common.policy.mgt.ui; + +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlElementWrapper; +import javax.xml.bind.annotation.XmlRootElement; +import java.util.List; + +@XmlRootElement(name = "Table") +public class Table { + + List columns; + + @XmlElementWrapper(name = "Columns") + @XmlElement(name = "Column") + public List getColumns() { return columns; } + + public void setColumns(List columns) { this.columns = columns; } +} diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/TimeSelector.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/TimeSelector.java new file mode 100644 index 0000000000..2e42d6712c --- /dev/null +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/policy/mgt/ui/TimeSelector.java @@ -0,0 +1,50 @@ +/* Copyright (c) 2020, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved. + * + * Entgra (Pvt) Ltd. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.wso2.carbon.device.mgt.common.policy.mgt.ui; + +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; + +@XmlRootElement(name = "TimeSelector") +public class TimeSelector { + + private int initialDataIndex; + private int startOptionValue; + private int lastOptionValue; + private int valueDifference; + + @XmlElement(name = "InitialDataIndex") + public int getInitialDataIndex() { return initialDataIndex; } + + public void setInitialDataIndex(int initialDataIndex) { this.initialDataIndex = initialDataIndex; } + + @XmlElement(name = "StartOptionValue") + public int getStartOptionValue() { return startOptionValue; } + + public void setStartOptionValue(int startOptionValue) { this.startOptionValue = startOptionValue; } + + @XmlElement(name = "LastOptionValue") + public int getLastOptionValue() { return lastOptionValue; } + + public void setLastOptionValue(int lastOptionValue) { this.lastOptionValue = lastOptionValue; } + + @XmlElement(name = "ValueDifference") + public int getValueDifference() { return valueDifference; } + + public void setValueDifference(int valueDifference) { this.valueDifference = valueDifference; } +}