package org.apache.cayenne.pref;

import java.util.List;

/** Class _Domain was generated by Cayenne.
  * It is probably a good idea to avoid changing this class manually, 
  * since it may be overwritten next time code is regenerated. 
  * If you need to make any customizations, please use subclass. 
  */
public class _Domain extends org.apache.cayenne.CayenneDataObject {

    public static final String DESCRIPTION_PROPERTY = "description";
    public static final String LEVEL_PROPERTY = "level";
    public static final String NAME_PROPERTY = "name";
    public static final String PARENT_DOMAIN_PROPERTY = "parentDomain";
    public static final String PREFERENCES_PROPERTY = "preferences";
    public static final String SUBDOMAINS_PROPERTY = "subdomains";

    public static final String ID_PK_COLUMN = "id";

    public void setDescription(String description) {
        writeProperty("description", description);
    }
    public String getDescription() {
        return (String)readProperty("description");
    }
    
    
    public void setLevel(Integer level) {
        writeProperty("level", level);
    }
    public Integer getLevel() {
        return (Integer)readProperty("level");
    }
    
    
    public void setName(String name) {
        writeProperty("name", name);
    }
    public String getName() {
        return (String)readProperty("name");
    }
    
    
    public void setParentDomain(Domain parentDomain) {
        setToOneTarget("parentDomain", parentDomain, true);
    }

    public Domain getParentDomain() {
        return (Domain)readProperty("parentDomain");
    } 
    
    
    public void addToPreferences(DomainPreference obj) {
        addToManyTarget("preferences", obj, true);
    }
    public void removeFromPreferences(DomainPreference obj) {
        removeToManyTarget("preferences", obj, true);
    }
    public List getPreferences() {
        return (List)readProperty("preferences");
    }
    
    
    public void addToSubdomains(Domain obj) {
        addToManyTarget("subdomains", obj, true);
    }
    public void removeFromSubdomains(Domain obj) {
        removeToManyTarget("subdomains", obj, true);
    }
    public List getSubdomains() {
        return (List)readProperty("subdomains");
    }
    
    
}
