package com.libreecm.commonAPI.model;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class ExtensionFeature  extends LibreECMObject {
	private String id;
		 
	private static final long serialVersionUID = 1L;
 
    private String url;
    private String commonName;
    private String versionLabel;
    private String description;
    
    private Map<String, String> featureData;
 
    private List<CmisExtensionElement> extensions;
    
    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getCommonName() {
        return commonName;
    }

    public void setCommonName(String commonName) {
        this.commonName = commonName;
    }

    public String getVersionLabel() {
        return versionLabel;
    }

    public void setVersionLabel(String versionLabel) {
        this.versionLabel = versionLabel;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Map<String, String> getFeatureData() {
        if (featureData == null) {
            featureData = new HashMap<String, String>();
        }
        return featureData;
    }

    public void setFeatureData(Map<String, String> featureData) {
        this.featureData = featureData;
    }

	public void setId(String id) {
		this.id = id;
	}

	public ExtensionFeature(){

		this.id="";
    }

	public ExtensionFeature(String url, String commonName, String versionLabel, String description,
			Map<String, String> featureData, List<CmisExtensionElement> cmisExtensionElement) {
		super();
		this.url = url;
		this.commonName = commonName;
		this.versionLabel = versionLabel;
		this.description = description;
		this.featureData = featureData;
		this.setExtensions(cmisExtensionElement);

		this.id="";
	}

	public List<CmisExtensionElement> getExtensions() {
		if (this.extensions==null){
			this.extensions=new ArrayList<>();
		}
		return this.extensions;
	} 


	public void setExtensions(List<CmisExtensionElement> arg0) {
		this.extensions=arg0;
	}

	public String getId() {
		if (id==null){
			return null;
		}
		return id;
	}

    
}
