// Path: src/main/java/minhhai2209/jirapluginconverter/connect/descriptor/webpanel/WebPanel.java
// public class WebPanel extends AbstractModule {
//   private Map<String, String> params;
//   private int weight = 100;
//   private WebPanelLayout layout;
//   protected String url;
//   private I18nProperty tooltip;
// 
//   public Map<String, String> getParams() {
//     return params;
//   }
//   public void setParams(Map<String, String> params) {
//     this.params = params;
//   }
//   public int getWeight() {
//     return weight;
//   }
//   public void setWeight(int weight) {
//     this.weight = weight;
//   }
//   public WebPanelLayout getLayout() {
//     return layout;
//   }
//   public void setLayout(WebPanelLayout layout) {
//     this.layout = layout;
//   }
//   public String getUrl() {
//     return url;
//   }
//   public void setUrl(String url) {
//     this.url = url;
//   }
//   public I18nProperty getTooltip() {
//     return tooltip;
//   }
//   public void setTooltip(I18nProperty tooltip) {
//     this.tooltip = tooltip;
//   }
// }
// 
// Path: src/main/java/minhhai2209/jirapluginconverter/plugin/descriptor/Resource.java
// @XmlRootElement
// @XmlAccessorType(XmlAccessType.FIELD)
// public class Resource {
// 
//   @XmlAttribute
//   protected String name;
//   @XmlAttribute
//   protected  String namePattern;
//   @XmlAttribute
//   protected String type;
//   @XmlAttribute
//   protected String location;
//   
//   public String getName() {
//     return name;
//   }
//   public void setName(String name) {
//     this.name = name;
//   }
//   public String getNamePattern() {
//     return namePattern;
//   }
//   public void setNamePattern(String namePattern) {
//     this.namePattern = namePattern;
//   }
//   public String getType() {
//     return type;
//   }
//   public void setType(String type) {
//     this.type = type;
//   }
//   public String getLocation() {
//     return location;
//   }
//   public void setLocation(String location) {
//     this.location = location;
//   }
// }
// 
// Path: src/main/java/minhhai2209/jirapluginconverter/plugin/descriptor/WebPanelModule.java
// @XmlRootElement(name="web-panel")
// @XmlAccessorType(XmlAccessType.FIELD)
// public class WebPanelModule {
// 
//   @XmlAttribute
//   private String clazz;
//   @XmlAttribute(required=true)
//   private String key;
//   @XmlAttribute
//   private String name;
//   @XmlAttribute
//   private int weight;
//   @XmlAttribute(required=true)
//   private String location;
//   
//   @XmlElement(required=true)
//   private Label label = new Label();
//   
//   @XmlElement
//   private Resource resource;
//   
//   private Condition condition;
//   private Conditions conditions;
// 
//   public String getClazz() {
//     return clazz;
//   }
// 
//   public void setClazz(String clazz) {
//     this.clazz = clazz;
//   }
// 
//   public String getKey() {
//     return key;
//   }
// 
//   public void setKey(String key) {
//     this.key = key;
//   }
// 
//   public String getName() {
//     return name;
//   }
// 
//   public void setName(String name) {
//     this.name = name;
//   }
// 
//   public int getWeight() {
//     return weight;
//   }
// 
//   public void setWeight(int weight) {
//     this.weight = weight;
//   }
// 
//   public String getLocation() {
//     return location;
//   }
// 
//   public void setLocation(String location) {
//     this.location = location;
//   }
// 
//   public String getLabel() {
//     return this.label.getKey();
//   }
// 
//   public void setLabel(String label) {
//     this.label.setKey(label);;
//   }
// 
//   public Condition getCondition() {
//     return condition;
//   }
// 
//   public void setCondition(Condition condition) {
//     this.condition = condition;
//   }
// 
//   public Conditions getConditions() {
//     return conditions;
//   }
// 
//   public void setConditions(Conditions conditions) {
//     this.conditions = conditions;
//   }
// 
//   public Resource getResource() {
//     return resource;
//   }
// 
//   public void setResource(Resource resource) {
//     this.resource = resource;
//   }
// }


import java.util.List;
import minhhai2209.jirapluginconverter.connect.descriptor.Modules;
import minhhai2209.jirapluginconverter.connect.descriptor.condition.ConditionWrapper;
import minhhai2209.jirapluginconverter.connect.descriptor.webpanel.WebPanel;
import minhhai2209.jirapluginconverter.plugin.descriptor.Condition;
import minhhai2209.jirapluginconverter.plugin.descriptor.Conditions;
import minhhai2209.jirapluginconverter.plugin.descriptor.Conditions.Type;
import minhhai2209.jirapluginconverter.plugin.descriptor.DefaultWebPanelResource;
import minhhai2209.jirapluginconverter.plugin.descriptor.Resource;
import minhhai2209.jirapluginconverter.plugin.descriptor.WebPanelModule;
package minhhai2209.jirapluginconverter.converter.descriptor;



public class WebPanelConverter extends ModuleConverter<WebPanelModule, WebPanel>{

  private ConditionConverter conditionConverter = new ConditionConverter();

  @Override
  public WebPanelModule toPluginModule(WebPanel webPanel, Modules modules) {
    WebPanelModule module = new WebPanelModule();
    module.setKey(webPanel.getKey());
    module.setLabel(webPanel.getName().getValue());
    module.setLocation(webPanel.getLocation());
    module.setWeight(webPanel.getWeight());
// Path: src/main/java/minhhai2209/jirapluginconverter/connect/descriptor/webpanel/WebPanel.java
// public class WebPanel extends AbstractModule {
//   private Map<String, String> params;
//   private int weight = 100;
//   private WebPanelLayout layout;
//   protected String url;
//   private I18nProperty tooltip;
// 
//   public Map<String, String> getParams() {
//     return params;
//   }
//   public void setParams(Map<String, String> params) {
//     this.params = params;
//   }
//   public int getWeight() {
//     return weight;
//   }
//   public void setWeight(int weight) {
//     this.weight = weight;
//   }
//   public WebPanelLayout getLayout() {
//     return layout;
//   }
//   public void setLayout(WebPanelLayout layout) {
//     this.layout = layout;
//   }
//   public String getUrl() {
//     return url;
//   }
//   public void setUrl(String url) {
//     this.url = url;
//   }
//   public I18nProperty getTooltip() {
//     return tooltip;
//   }
//   public void setTooltip(I18nProperty tooltip) {
//     this.tooltip = tooltip;
//   }
// }
// 
// Path: src/main/java/minhhai2209/jirapluginconverter/plugin/descriptor/Resource.java
// @XmlRootElement
// @XmlAccessorType(XmlAccessType.FIELD)
// public class Resource {
// 
//   @XmlAttribute
//   protected String name;
//   @XmlAttribute
//   protected  String namePattern;
//   @XmlAttribute
//   protected String type;
//   @XmlAttribute
//   protected String location;
//   
//   public String getName() {
//     return name;
//   }
//   public void setName(String name) {
//     this.name = name;
//   }
//   public String getNamePattern() {
//     return namePattern;
//   }
//   public void setNamePattern(String namePattern) {
//     this.namePattern = namePattern;
//   }
//   public String getType() {
//     return type;
//   }
//   public void setType(String type) {
//     this.type = type;
//   }
//   public String getLocation() {
//     return location;
//   }
//   public void setLocation(String location) {
//     this.location = location;
//   }
// }
// 
// Path: src/main/java/minhhai2209/jirapluginconverter/plugin/descriptor/WebPanelModule.java
// @XmlRootElement(name="web-panel")
// @XmlAccessorType(XmlAccessType.FIELD)
// public class WebPanelModule {
// 
//   @XmlAttribute
//   private String clazz;
//   @XmlAttribute(required=true)
//   private String key;
//   @XmlAttribute
//   private String name;
//   @XmlAttribute
//   private int weight;
//   @XmlAttribute(required=true)
//   private String location;
//   
//   @XmlElement(required=true)
//   private Label label = new Label();
//   
//   @XmlElement
//   private Resource resource;
//   
//   private Condition condition;
//   private Conditions conditions;
// 
//   public String getClazz() {
//     return clazz;
//   }
// 
//   public void setClazz(String clazz) {
//     this.clazz = clazz;
//   }
// 
//   public String getKey() {
//     return key;
//   }
// 
//   public void setKey(String key) {
//     this.key = key;
//   }
// 
//   public String getName() {
//     return name;
//   }
// 
//   public void setName(String name) {
//     this.name = name;
//   }
// 
//   public int getWeight() {
//     return weight;
//   }
// 
//   public void setWeight(int weight) {
//     this.weight = weight;
//   }
// 
//   public String getLocation() {
//     return location;
//   }
// 
//   public void setLocation(String location) {
//     this.location = location;
//   }
// 
//   public String getLabel() {
//     return this.label.getKey();
//   }
// 
//   public void setLabel(String label) {
//     this.label.setKey(label);;
//   }
// 
//   public Condition getCondition() {
//     return condition;
//   }
// 
//   public void setCondition(Condition condition) {
//     this.condition = condition;
//   }
// 
//   public Conditions getConditions() {
//     return conditions;
//   }
// 
//   public void setConditions(Conditions conditions) {
//     this.conditions = conditions;
//   }
// 
//   public Resource getResource() {
//     return resource;
//   }
// 
//   public void setResource(Resource resource) {
//     this.resource = resource;
//   }
// }


// Path: src/main/java/minhhai2209/jirapluginconverter/converter/descriptor/WebPanelConverter.java
import java.util.List;
import minhhai2209.jirapluginconverter.connect.descriptor.Modules;
import minhhai2209.jirapluginconverter.connect.descriptor.condition.ConditionWrapper;
import minhhai2209.jirapluginconverter.connect.descriptor.webpanel.WebPanel;
import minhhai2209.jirapluginconverter.plugin.descriptor.Condition;
import minhhai2209.jirapluginconverter.plugin.descriptor.Conditions;
import minhhai2209.jirapluginconverter.plugin.descriptor.Conditions.Type;
import minhhai2209.jirapluginconverter.plugin.descriptor.DefaultWebPanelResource;
import minhhai2209.jirapluginconverter.plugin.descriptor.Resource;
import minhhai2209.jirapluginconverter.plugin.descriptor.WebPanelModule;

package minhhai2209.jirapluginconverter.converter.descriptor;



public class WebPanelConverter extends ModuleConverter<WebPanelModule, WebPanel>{

  private ConditionConverter conditionConverter = new ConditionConverter();

  @Override
  public WebPanelModule toPluginModule(WebPanel webPanel, Modules modules) {
    WebPanelModule module = new WebPanelModule();
    module.setKey(webPanel.getKey());
    module.setLabel(webPanel.getName().getValue());
    module.setLocation(webPanel.getLocation());
    module.setWeight(webPanel.getWeight());
    Resource resource = new DefaultWebPanelResource(webPanel.getKey());