org.jboss.shrinkwrap.descriptor.api.orm10.OneToMany Maven / Gradle / Ivy
package org.jboss.shrinkwrap.descriptor.api.orm10;
import java.util.ArrayList;
import java.util.List;
import org.jboss.shrinkwrap.descriptor.api.Child;
import org.jboss.shrinkwrap.descriptor.api.orm10.MapKey;
import org.jboss.shrinkwrap.descriptor.api.orm10.JoinTable;
import org.jboss.shrinkwrap.descriptor.api.orm10.JoinColumn;
import org.jboss.shrinkwrap.descriptor.api.orm10.CascadeType;
import org.jboss.shrinkwrap.descriptor.api.orm10.FetchType;
import org.jboss.shrinkwrap.descriptor.api.orm.*;
import org.jboss.shrinkwrap.descriptor.api.orm.OrmOneToManyCommType;
import org.jboss.shrinkwrap.descriptor.api.orm10.MapKey;
import org.jboss.shrinkwrap.descriptor.api.orm10.JoinTable;
import org.jboss.shrinkwrap.descriptor.api.orm10.JoinColumn;
import org.jboss.shrinkwrap.descriptor.api.orm10.CascadeType;/**
* This interface defines the contract for the one-to-many
xsd type
* @author Ralf Battenfeld
* @author Andrew Lee Rubinger
* @author George Gastaldi
*/
public interface OneToMany extends Child,
OrmOneToManyCommType,
MapKey>,
JoinTable>,
JoinColumn>,
CascadeType>> {
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany 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 OneToMany
*/
public OneToMany removeOrderBy();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany removeMapKey();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany removeJoinTable();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany ElementName: orm:join-column ElementType : join-column
// MaxOccurs: -unbounded isGeneric: true isAttribute: false isEnum: false isDataType: false
// --------------------------------------------------------------------------------------------------------||
/**
* If not already created, a new join-column
element will be created and returned.
* Otherwise, the first existing join-column
element will be returned.
* @return the instance defined for the element join-column
*/
public JoinColumn> getOrCreateJoinColumn();
/**
* Creates a new join-column
element
* @return the new created instance of JoinColumn>
*/
public JoinColumn> createJoinColumn();
/**
* Returns all join-column
elements
* @return list of join-column
*/
public List>> getAllJoinColumn();
/**
* Removes all join-column
elements
* @return the current instance of JoinColumn>
*/
public OneToMany removeAllJoinColumn();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany removeCascade();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany 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 OneToMany
*/
public OneToMany removeName();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany 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 OneToMany
*/
public OneToMany removeTargetEntity();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany fetch(FetchType fetch);
/**
* Sets the fetch
attribute
* @param fetch the value for the attribute fetch
* @return the current instance of OneToMany
*/
public OneToMany 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 OneToMany
*/
public OneToMany removeFetch();
// --------------------------------------------------------------------------------------------------------||
// ClassName: OneToMany 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 OneToMany
*/
public OneToMany 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 OneToMany
*/
public OneToMany removeMappedBy();
}