001package org.kuali.common.util.project.model;
002
003import java.util.Arrays;
004import java.util.Collections;
005import java.util.List;
006
007import org.kuali.common.util.Assert;
008import org.kuali.common.util.project.KualiProjectConstants;
009
010public enum KualiGroup {
011
012        COMMON(KualiProjectConstants.COMMON_GROUP_ID), //
013        RICE(KualiProjectConstants.RICE_GROUP_ID), //
014        STUDENT(KualiProjectConstants.STUDENT_GROUP_ID), //
015        MOBILITY(KualiProjectConstants.MOBILITY_GROUP_ID), //
016        OLE(KualiProjectConstants.OLE_GROUP_ID), //
017        KFS(KualiProjectConstants.KFS_GROUP_ID), //
018        COEUS(KualiProjectConstants.COEUS_GROUP_ID), //
019        READY(KualiProjectConstants.READY_GROUP_ID), //
020        KPME(KualiProjectConstants.KPME_GROUP_ID);
021
022        private KualiGroup(String groupId) {
023                Assert.noBlanks(groupId);
024                this.id = groupId;
025        }
026
027        private final String id;
028
029        public String getId() {
030                return id;
031        }
032
033        /**
034         * Return the Kuali groups as an immutable list
035         */
036        public static final List<KualiGroup> asList() {
037                return Collections.unmodifiableList(Arrays.asList(values()));
038        }
039
040}