Пример #1
0
        public static Counters NewCounters()
        {
            Counters hc = new Counters();

            foreach (JobCounter c in JobCounter.Values())
            {
                hc.FindCounter(c).SetValue((long)(Math.Random() * 1000));
            }
            foreach (TaskCounter c_1 in TaskCounter.Values())
            {
                hc.FindCounter(c_1).SetValue((long)(Math.Random() * 1000));
            }
            int nc = FileSystemCounter.Values().Length * 4;

            for (int i = 0; i < nc; ++i)
            {
                foreach (FileSystemCounter c_2 in FileSystemCounter.Values())
                {
                    hc.FindCounter(FsSchemes.Next(), c_2).SetValue((long)(Math.Random() * Dt));
                }
            }
            for (int i_1 = 0; i_1 < 2 * 3; ++i_1)
            {
                hc.FindCounter(UserCounterGroups.Next(), UserCounters.Next()).SetValue((long)(Math
                                                                                              .Random() * 100000));
            }
            return(hc);
        }
Пример #2
0
        /// <exception cref="System.IO.IOException"/>
        public virtual void ReadFields(DataInput @in)
        {
            int numSchemes = WritableUtils.ReadVInt(@in);

            // #scheme
            FileSystemCounter[] enums = FileSystemCounter.Values();
            for (int i = 0; i < numSchemes; ++i)
            {
                string scheme = WritableUtils.ReadString(@in);
                // scheme
                int numCounters = WritableUtils.ReadVInt(@in);
                // #counter
                for (int j = 0; j < numCounters; ++j)
                {
                    FindCounter(scheme, enums[WritableUtils.ReadVInt(@in)]).SetValue(WritableUtils.ReadVLong
                                                                                         (@in));
                }
            }
        }
Пример #3
0
 public virtual C FindCounter(string scheme, FileSystemCounter key)
 {
     lock (this)
     {
         string   canonicalScheme = CheckScheme(scheme);
         object[] counters        = map[canonicalScheme];
         int      ord             = (int)(key);
         if (counters == null)
         {
             counters             = new object[FileSystemCounter.Values().Length];
             map[canonicalScheme] = counters;
             counters[ord]        = NewCounter(canonicalScheme, key);
         }
         else
         {
             if (counters[ord] == null)
             {
                 counters[ord] = NewCounter(canonicalScheme, key);
             }
         }
         return((C)counters[ord]);
     }
 }