コード例 #1
0
 public virtual Net.Vpc.Upa.Config.DecorationValue[] GetArray(string name)
 {
     Net.Vpc.Upa.Impl.Config.Decorations.DecorationArray t = (Net.Vpc.Upa.Impl.Config.Decorations.DecorationArray)Get(name);
     if (t == null)
     {
         return(null);
     }
     return(t.GetValues());
 }
コード例 #2
0
 public virtual T[] GetPrimitiveArray <T>(string name, System.Type type)
 {
     Net.Vpc.Upa.Impl.Config.Decorations.DecorationArray t = (Net.Vpc.Upa.Impl.Config.Decorations.DecorationArray)Get(name);
     if (t == null)
     {
         return(default(T[]));
     }
     Net.Vpc.Upa.Config.DecorationValue[] arr = t.GetValues();
     T[] arr2 = (T[])System.Array.CreateInstance(type, arr.Length);
     for (int i = 0; i < arr2.Length; i++)
     {
         arr2[i] = (T)((Net.Vpc.Upa.Impl.Config.Decorations.DecorationPrimitiveValue)arr[i]).GetValue();
     }
     return(arr2);
 }
コード例 #3
0
        public virtual void Merge()
        {
            System.Collections.Generic.IList <object> ok           = new System.Collections.Generic.List <object>();
            Net.Vpc.Upa.Config.DecorationValue[]      alternatives = GetAlternatives();
            foreach (Net.Vpc.Upa.Config.DecorationValue alternative in alternatives)
            {
                Net.Vpc.Upa.Impl.Config.Decorations.DecorationArray d = (Net.Vpc.Upa.Impl.Config.Decorations.DecorationArray)alternative;
                switch (d.GetConfig().GetConfigAction())
                {
                case Net.Vpc.Upa.Config.ConfigAction.DELETE:
                {
                    ok.Clear();
                    break;
                }

                case Net.Vpc.Upa.Config.ConfigAction.MERGE:
                case Net.Vpc.Upa.Config.ConfigAction.REPLACE:
                {
                    ok.Clear();
                    ok.Add(d.GetValues());
                    break;
                }
                }
            }
            Net.Vpc.Upa.Config.DecorationValue last = alternatives[alternatives.Length - 1];
            if ((ok.Count == 0))
            {
                values     = null;
                configInfo = new Net.Vpc.Upa.Config.ConfigInfo(last.GetConfig().GetOrder(), Net.Vpc.Upa.Config.ConfigAction.DELETE, last.GetConfig().GetPersistenceGroup(), last.GetConfig().GetPersistenceUnit());
            }
            else
            {
                values     = (Net.Vpc.Upa.Config.DecorationValue[])ok[(ok).Count - 1];
                configInfo = new Net.Vpc.Upa.Config.ConfigInfo(last.GetConfig().GetOrder(), Net.Vpc.Upa.Config.ConfigAction.MERGE, last.GetConfig().GetPersistenceGroup(), last.GetConfig().GetPersistenceUnit());
            }
        }