public bool Equals(SeniorityLevelCode code)
 {
     if (code == null || code.InternalObject == null || this.InternalObject == null)
     {
         return(false);
     }
     return(this.InternalObject.Equals(code.InternalObject));
 }
        /// <summary>
        /// Initialisation des constantes dans le dictionnaire
        /// </summary>
        static SeniorityLevelCode()
        {
            SeniorityLevelAdaptee adapteeA = new SeniorityLevelAdaptee("SENIOR", "SEN", 0, "SEN");

            SENIOR = new SeniorityLevelCode(adapteeA);
            SeniorityLevelAdaptee adapteeO = new SeniorityLevelAdaptee("Subordinated Tiers 1", "SUB_T1", 1, "SUB", "T1", "T1");

            SUB_T1 = new SeniorityLevelCode(adapteeO);
            SeniorityLevelAdaptee adapteeE = new SeniorityLevelAdaptee("Subordinated Upper Tiers 2", "SUB_UT2", 2, "SUB", "UT2", "UT2");

            SUB_UT2 = new SeniorityLevelCode(adapteeE);
            SeniorityLevelAdaptee adapteeD = new SeniorityLevelAdaptee("Subordinated Lower Tiers 2", "SUB_LT2", 3, "SUB", "LT2", "LT2");

            SUB_LT2 = new SeniorityLevelCode(adapteeD);
            SeniorityLevelAdaptee adapteeM = new SeniorityLevelAdaptee("Subordinated others", "SUB_OTHER", 4, "SUB", "OTHER", "OTHER");

            SUB_OTHER = new SeniorityLevelCode(adapteeM);

            new SeniorityLevelAdaptee("Insurance Sub Tiers 1", "ISUB_T1", 5, "SUB", "T1", "iT1");
            new SeniorityLevelAdaptee("Insurance Sub Upper Tiers 2", "ISUB_UT2", 6, "SUB", "UT2", "iUT2");
            new SeniorityLevelAdaptee("Insurance Sub Lower Tiers 2", "ISUB_LT2", 7, "SUB", "LT2", "iLT2");

            new SeniorityLevelAdaptee("Subordinated Tiers 1 Step", "SUB_T1_STEP", 8, "SUB", "T1", "T1 step");
            new SeniorityLevelAdaptee("Subordinated Tiers 1 Non Step", "SUB_T1_NSTEP", 9, "SUB", "T1", "T1 non-step");
            new SeniorityLevelAdaptee("Subordinated LT2 Callable", "SUB_LT2_CALL", 10, "SUB", "LT2", "LT2 callable");

            new SeniorityLevelAdaptee("Subordinated LT2 Non Callable", "SUB_LT2_NCALL", 11, "SUB", "LT2", "LT2 non-callable");
            new SeniorityLevelAdaptee("Insurance Sub Lower Tiers 2 callable", "ISUB_LT2_CALL", 12, "SUB", "LT2", "iLT2 callable");
            new SeniorityLevelAdaptee("Insurance Sub Lower Tiers 2 non callable", "ISUB_LT2_NCAL", 13, "SUB", "LT2", "iLT2 non-callable");
            new SeniorityLevelAdaptee("T2 perpetual", "SUB_T2_PERP", 14, "SUB", "T2", "T2 perpetual");
            new SeniorityLevelAdaptee("T1 perpetual", "SUB_T1_PERP", 15, "SUB", "T1", "T1 perpetual");
            new SeniorityLevelAdaptee("LT2 perpetual", "SUB_LT2_PERP", 16, "SUB", "LT2", "LT2 perpetual");
            new SeniorityLevelAdaptee("LT1 perpetual", "SUB_LT1_PERP", 17, "SUB", "LT1", "LT1 perpetual");
            new SeniorityLevelAdaptee("T2 dated callable", "SUB_T2_CALL", 18, "SUB", "T2", "T2 dated callable");
            new SeniorityLevelAdaptee("T2 dated non-callable", "SUB_T2_NCALL", 18, "SUB", "T2", "T2 dated non-callable");
        }
        public override bool Equals(object obj)
        {
            SeniorityLevelCode code = obj as SeniorityLevelCode;

            return(this.Equals(code));
        }