/// <summary> /// Update constructor: initializes and populates lookup table. /// </summary> /// <param name="nugget"></param> internal Update(NuggetWrapper nugget) : base(nugget) { // Initialize lookup table lookup = new Dictionary <string, int>(); for (int i = 0; i < nugget.data.FlakesLength; ++i) { lookup[nugget.data.Flakes(i).Value.Label] = i; } }
/// <summary> /// Factory method for creating Nuggets of a specific derived type given a raw buffer. /// </summary> /// <param name="buffer"></param> /// <returns>The derived Nugget.</returns> public static Nugget Create(ref byte[] buffer) { NuggetWrapper nugget = new NuggetWrapper(ref buffer); switch (nugget.data.Type) { case Protocol.NuggetType.UPDATE: return(new Update(nugget)); default: return(null); } }
/// <summary> /// Protected constructor for factory method. /// </summary> /// <param name="nugget"></param> protected Nugget(NuggetWrapper nugget) { this.nugget = nugget; }