001/**
002 */
003package org.nasdanika.models.gitlab;
004
005import org.eclipse.emf.common.util.EList;
006import org.nasdanika.models.gitlab.codeowners.CodeOwner;
007
008/**
009 * <!-- begin-user-doc -->
010 * A representation of the model object '<em><b>User</b></em>'.
011 * <!-- end-user-doc -->
012 *
013 * <p>
014 * The following features are supported:
015 * </p>
016 * <ul>
017 *   <li>{@link org.nasdanika.models.gitlab.User#getProjects <em>Projects</em>}</li>
018 *   <li>{@link org.nasdanika.models.gitlab.User#getMembership <em>Membership</em>}</li>
019 *   <li>{@link org.nasdanika.models.gitlab.User#getOwns <em>Owns</em>}</li>
020 *   <li>{@link org.nasdanika.models.gitlab.User#getCreatedProjects <em>Created Projects</em>}</li>
021 *   <li>{@link org.nasdanika.models.gitlab.User#getContributions <em>Contributions</em>}</li>
022 *   <li>{@link org.nasdanika.models.gitlab.User#getCodeOwnership <em>Code Ownership</em>}</li>
023 * </ul>
024 *
025 * @see org.nasdanika.models.gitlab.GitLabPackage#getUser()
026 * @model
027 * @generated
028 */
029public interface User extends AbstractUser {
030        /**
031         * Returns the value of the '<em><b>Projects</b></em>' containment reference list.
032         * The list contents are of type {@link org.nasdanika.models.gitlab.Project}.
033         * <!-- begin-user-doc -->
034         * <!-- end-user-doc -->
035         * @return the value of the '<em>Projects</em>' containment reference list.
036         * @see org.nasdanika.models.gitlab.GitLabPackage#getUser_Projects()
037         * @model containment="true" keys="id"
038         * @generated
039         */
040        EList<Project> getProjects();
041
042        /**
043         * Returns the value of the '<em><b>Membership</b></em>' reference list.
044         * The list contents are of type {@link org.nasdanika.models.gitlab.Member}.
045         * It is bidirectional and its opposite is '{@link org.nasdanika.models.gitlab.Member#getUser <em>User</em>}'.
046         * <!-- begin-user-doc -->
047         * <!-- end-user-doc -->
048         * @return the value of the '<em>Membership</em>' reference list.
049         * @see org.nasdanika.models.gitlab.GitLabPackage#getUser_Membership()
050         * @see org.nasdanika.models.gitlab.Member#getUser
051         * @model opposite="user"
052         * @generated
053         */
054        EList<Member> getMembership();
055
056        /**
057         * Returns the value of the '<em><b>Owns</b></em>' reference list.
058         * The list contents are of type {@link org.nasdanika.models.gitlab.Owner}.
059         * It is bidirectional and its opposite is '{@link org.nasdanika.models.gitlab.Owner#getUser <em>User</em>}'.
060         * <!-- begin-user-doc -->
061         * <!-- end-user-doc -->
062         * @return the value of the '<em>Owns</em>' reference list.
063         * @see org.nasdanika.models.gitlab.GitLabPackage#getUser_Owns()
064         * @see org.nasdanika.models.gitlab.Owner#getUser
065         * @model opposite="user"
066         * @generated
067         */
068        EList<Owner> getOwns();
069
070        /**
071         * Returns the value of the '<em><b>Created Projects</b></em>' reference list.
072         * The list contents are of type {@link org.nasdanika.models.gitlab.Project}.
073         * It is bidirectional and its opposite is '{@link org.nasdanika.models.gitlab.Project#getCreator <em>Creator</em>}'.
074         * <!-- begin-user-doc -->
075         * <!-- end-user-doc -->
076         * @return the value of the '<em>Created Projects</em>' reference list.
077         * @see org.nasdanika.models.gitlab.GitLabPackage#getUser_CreatedProjects()
078         * @see org.nasdanika.models.gitlab.Project#getCreator
079         * @model opposite="creator" keys="id"
080         * @generated
081         */
082        EList<Project> getCreatedProjects();
083
084        /**
085         * Returns the value of the '<em><b>Contributions</b></em>' reference list.
086         * The list contents are of type {@link org.nasdanika.models.gitlab.Contributor}.
087         * It is bidirectional and its opposite is '{@link org.nasdanika.models.gitlab.Contributor#getUser <em>User</em>}'.
088         * <!-- begin-user-doc -->
089         * <!-- end-user-doc -->
090         * @return the value of the '<em>Contributions</em>' reference list.
091         * @see org.nasdanika.models.gitlab.GitLabPackage#getUser_Contributions()
092         * @see org.nasdanika.models.gitlab.Contributor#getUser
093         * @model opposite="user"
094         * @generated
095         */
096        EList<Contributor> getContributions();
097
098        /**
099         * Returns the value of the '<em><b>Code Ownership</b></em>' reference list.
100         * The list contents are of type {@link org.nasdanika.models.gitlab.codeowners.CodeOwner}.
101         * It is bidirectional and its opposite is '{@link org.nasdanika.models.gitlab.codeowners.CodeOwner#getUser <em>User</em>}'.
102         * <!-- begin-user-doc -->
103         * <!-- end-user-doc -->
104         * @return the value of the '<em>Code Ownership</em>' reference list.
105         * @see org.nasdanika.models.gitlab.GitLabPackage#getUser_CodeOwnership()
106         * @see org.nasdanika.models.gitlab.codeowners.CodeOwner#getUser
107         * @model opposite="user"
108         * @generated
109         */
110        EList<CodeOwner> getCodeOwnership();
111
112} // User