org.jboss.shrinkwrap.descriptor.api.orm21.ManyToMany Maven / Gradle / Ivy
package org.jboss.shrinkwrap.descriptor.api.orm21;
import java.util.ArrayList;
import java.util.List;
import org.jboss.shrinkwrap.descriptor.api.Child;
import org.jboss.shrinkwrap.descriptor.api.orm21.OrderColumn;
import org.jboss.shrinkwrap.descriptor.api.orm21.MapKey;
import org.jboss.shrinkwrap.descriptor.api.orm21.MapKeyClass;
import org.jboss.shrinkwrap.descriptor.api.orm21.TemporalType;
import org.jboss.shrinkwrap.descriptor.api.orm21.EnumType;
import org.jboss.shrinkwrap.descriptor.api.orm21.AttributeOverride;
import org.jboss.shrinkwrap.descriptor.api.orm21.Convert;
import org.jboss.shrinkwrap.descriptor.api.orm21.MapKeyColumn;
import org.jboss.shrinkwrap.descriptor.api.orm21.MapKeyJoinColumn;
import org.jboss.shrinkwrap.descriptor.api.orm21.ForeignKey;
import org.jboss.shrinkwrap.descriptor.api.orm21.JoinTable;
import org.jboss.shrinkwrap.descriptor.api.orm21.CascadeType;
import org.jboss.shrinkwrap.descriptor.api.orm21.FetchType;
import org.jboss.shrinkwrap.descriptor.api.orm21.AccessType;
import org.jboss.shrinkwrap.descriptor.api.orm.*;
import org.jboss.shrinkwrap.descriptor.api.orm.OrmManyToManyCommType;
import org.jboss.shrinkwrap.descriptor.api.orm21.MapKey;
import org.jboss.shrinkwrap.descriptor.api.orm21.JoinTable;
import org.jboss.shrinkwrap.descriptor.api.orm21.CascadeType;/**
* This interface defines the contract for the many-to-many
xsd type
* @author Ralf Battenfeld
* @author Andrew Lee Rubinger
*/
public interface ManyToMany extends Child,
OrmManyToManyCommType,
MapKey>,
JoinTable>,
CascadeType>> {
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: xsd:string ElementType : order-by
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: true
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the order-by
element
* @param orderBy the value for the element order-by
* @return the current instance of ManyToMany
*/
public ManyToMany orderBy(String orderBy);
/**
* Returns the order-by
element
* @return the node defined for the element order-by
*/
public String getOrderBy();
/**
* Removes the order-by
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeOrderBy();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:order-column ElementType : order-column
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new order-column
element with the given value will be created.
* Otherwise, the existing order-column
element will be returned.
* @return a new or existing instance of OrderColumn>
*/
public OrderColumn> getOrCreateOrderColumn();
/**
* Removes the order-column
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeOrderColumn();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:map-key ElementType : map-key
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key
element with the given value will be created.
* Otherwise, the existing map-key
element will be returned.
* @return a new or existing instance of MapKey>
*/
public MapKey> getOrCreateMapKey();
/**
* Removes the map-key
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeMapKey();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:map-key-class ElementType : map-key-class
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key-class
element with the given value will be created.
* Otherwise, the existing map-key-class
element will be returned.
* @return a new or existing instance of MapKeyClass>
*/
public MapKeyClass> getOrCreateMapKeyClass();
/**
* Removes the map-key-class
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeMapKeyClass();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:temporal-type ElementType : map-key-temporal
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: true isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the map-key-temporal
element
* @param mapKeyTemporal the value for the element map-key-temporal
* @return the current instance of ManyToMany
*/
public ManyToMany mapKeyTemporal(TemporalType mapKeyTemporal);
/**
* Sets the map-key-temporal
element
* @param mapKeyTemporal the value for the element map-key-temporal
* @return the current instance of ManyToMany
*/
public ManyToMany mapKeyTemporal(String mapKeyTemporal);
/**
* Returns the map-key-temporal
element
* @return the value found for the element map-key-temporal
*/
public TemporalType getMapKeyTemporal();
/**
* Returns the map-key-temporal
element
* @return the value found for the element map-key-temporal
*/
public String getMapKeyTemporalAsString();
/**
* Removes the map-key-temporal
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeMapKeyTemporal();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:enum-type ElementType : map-key-enumerated
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: true isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the map-key-enumerated
element
* @param mapKeyEnumerated the value for the element map-key-enumerated
* @return the current instance of ManyToMany
*/
public ManyToMany mapKeyEnumerated(EnumType mapKeyEnumerated);
/**
* Sets the map-key-enumerated
element
* @param mapKeyEnumerated the value for the element map-key-enumerated
* @return the current instance of ManyToMany
*/
public ManyToMany mapKeyEnumerated(String mapKeyEnumerated);
/**
* Returns the map-key-enumerated
element
* @return the value found for the element map-key-enumerated
*/
public EnumType getMapKeyEnumerated();
/**
* Returns the map-key-enumerated
element
* @return the value found for the element map-key-enumerated
*/
public String getMapKeyEnumeratedAsString();
/**
* Removes the map-key-enumerated
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeMapKeyEnumerated();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:attribute-override ElementType : map-key-attribute-override
// MaxOccurs: -unbounded isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key-attribute-override
element will be created and returned.
* Otherwise, the first existing map-key-attribute-override
element will be returned.
* @return the instance defined for the element map-key-attribute-override
*/
public AttributeOverride> getOrCreateMapKeyAttributeOverride();
/**
* Creates a new map-key-attribute-override
element
* @return the new created instance of AttributeOverride>
*/
public AttributeOverride> createMapKeyAttributeOverride();
/**
* Returns all map-key-attribute-override
elements
* @return list of map-key-attribute-override
*/
public List>> getAllMapKeyAttributeOverride();
/**
* Removes all map-key-attribute-override
elements
* @return the current instance of AttributeOverride>
*/
public ManyToMany removeAllMapKeyAttributeOverride();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:convert ElementType : map-key-convert
// MaxOccurs: -unbounded isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key-convert
element will be created and returned.
* Otherwise, the first existing map-key-convert
element will be returned.
* @return the instance defined for the element map-key-convert
*/
public Convert> getOrCreateMapKeyConvert();
/**
* Creates a new map-key-convert
element
* @return the new created instance of Convert>
*/
public Convert> createMapKeyConvert();
/**
* Returns all map-key-convert
elements
* @return list of map-key-convert
*/
public List>> getAllMapKeyConvert();
/**
* Removes all map-key-convert
elements
* @return the current instance of Convert>
*/
public ManyToMany removeAllMapKeyConvert();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:map-key-column ElementType : map-key-column
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key-column
element with the given value will be created.
* Otherwise, the existing map-key-column
element will be returned.
* @return a new or existing instance of MapKeyColumn>
*/
public MapKeyColumn> getOrCreateMapKeyColumn();
/**
* Removes the map-key-column
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeMapKeyColumn();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:map-key-join-column ElementType : map-key-join-column
// MaxOccurs: -unbounded isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key-join-column
element will be created and returned.
* Otherwise, the first existing map-key-join-column
element will be returned.
* @return the instance defined for the element map-key-join-column
*/
public MapKeyJoinColumn> getOrCreateMapKeyJoinColumn();
/**
* Creates a new map-key-join-column
element
* @return the new created instance of MapKeyJoinColumn>
*/
public MapKeyJoinColumn> createMapKeyJoinColumn();
/**
* Returns all map-key-join-column
elements
* @return list of map-key-join-column
*/
public List>> getAllMapKeyJoinColumn();
/**
* Removes all map-key-join-column
elements
* @return the current instance of MapKeyJoinColumn>
*/
public ManyToMany removeAllMapKeyJoinColumn();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:foreign-key ElementType : map-key-foreign-key
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new map-key-foreign-key
element with the given value will be created.
* Otherwise, the existing map-key-foreign-key
element will be returned.
* @return a new or existing instance of ForeignKey>
*/
public ForeignKey> getOrCreateMapKeyForeignKey();
/**
* Removes the map-key-foreign-key
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeMapKeyForeignKey();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:join-table ElementType : join-table
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new join-table
element with the given value will be created.
* Otherwise, the existing join-table
element will be returned.
* @return a new or existing instance of JoinTable>
*/
public JoinTable> getOrCreateJoinTable();
/**
* Removes the join-table
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeJoinTable();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:cascade-type ElementType : cascade
// MaxOccurs: - isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new cascade
element with the given value will be created.
* Otherwise, the existing cascade
element will be returned.
* @return a new or existing instance of CascadeType>
*/
public CascadeType> getOrCreateCascade();
/**
* Removes the cascade
element
* @return the current instance of ManyToMany
*/
public ManyToMany removeCascade();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: xsd:string ElementType : name
// MaxOccurs: - isGeneric: true isAttribute: true isEnum: false isDataType: true
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the name
attribute
* @param name the value for the attribute name
* @return the current instance of ManyToMany
*/
public ManyToMany name(String name);
/**
* Returns the name
attribute
* @return the value defined for the attribute name
*/
public String getName();
/**
* Removes the name
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeName();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: xsd:string ElementType : target-entity
// MaxOccurs: - isGeneric: true isAttribute: true isEnum: false isDataType: true
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the target-entity
attribute
* @param targetEntity the value for the attribute target-entity
* @return the current instance of ManyToMany
*/
public ManyToMany targetEntity(String targetEntity);
/**
* Returns the target-entity
attribute
* @return the value defined for the attribute target-entity
*/
public String getTargetEntity();
/**
* Removes the target-entity
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeTargetEntity();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:fetch-type ElementType : fetch
// MaxOccurs: - isGeneric: true isAttribute: true isEnum: true isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the fetch
attribute
* @param fetch the value for the attribute fetch
* @return the current instance of ManyToMany
*/
public ManyToMany fetch(FetchType fetch);
/**
* Sets the fetch
attribute
* @param fetch the value for the attribute fetch
* @return the current instance of ManyToMany
*/
public ManyToMany fetch(String fetch);
/**
* Returns the fetch
attribute
* @return the value defined for the attribute fetch
*/
public FetchType getFetch();
/**
* Returns the fetch
attribute
* @return the value found for the element fetch
*/
public String getFetchAsString();
/**
* Removes the fetch
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeFetch();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: orm:access-type ElementType : access
// MaxOccurs: - isGeneric: true isAttribute: true isEnum: true isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the access
attribute
* @param access the value for the attribute access
* @return the current instance of ManyToMany
*/
public ManyToMany access(AccessType access);
/**
* Sets the access
attribute
* @param access the value for the attribute access
* @return the current instance of ManyToMany
*/
public ManyToMany access(String access);
/**
* Returns the access
attribute
* @return the value defined for the attribute access
*/
public AccessType getAccess();
/**
* Returns the access
attribute
* @return the value found for the element access
*/
public String getAccessAsString();
/**
* Removes the access
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeAccess();
// --------------------------------------------------------------------------------------------------------||
// ClassName: ManyToMany ElementName: xsd:string ElementType : mapped-by
// MaxOccurs: - isGeneric: true isAttribute: true isEnum: false isDataType: true
// --------------------------------------------------------------------------------------------------------||
/**
* Sets the mapped-by
attribute
* @param mappedBy the value for the attribute mapped-by
* @return the current instance of ManyToMany
*/
public ManyToMany mappedBy(String mappedBy);
/**
* Returns the mapped-by
attribute
* @return the value defined for the attribute mapped-by
*/
public String getMappedBy();
/**
* Removes the mapped-by
attribute
* @return the current instance of ManyToMany
*/
public ManyToMany removeMappedBy();
}