Ejemplo n.º 1
0
 internal void register(StreamingContext context)
 {
     if (LoggerDiags.Enabled)
     {
         SingletonLogger.Instance().InfoLog(typeof(BlauSpace), "REGISTERING BLAUSPACE");
     }
     BlauSpaceRegistry.Instance().add(this);
 }
Ejemplo n.º 2
0
 // lazy singleton constructor
 public static BlauSpaceRegistry Instance()
 {
     if (_instance == null)
     {
         _instance = new BlauSpaceRegistry();
     }
     return(_instance);
 }
Ejemplo n.º 3
0
        // deserializer consults the blauspace registry to avoid duplicate instantiations
        public Object GetRealObject(StreamingContext context)
        {
            IBlauSpace s_validated = BlauSpaceRegistry.Instance().validate(this);

            if (LoggerDiags.Enabled)
            {
                SingletonLogger.Instance().InfoLog(typeof(BlauSpace), "VALIDATING BLAUSPACE");
            }
            return(s_validated);
        }
Ejemplo n.º 4
0
        // static factory method, which consults registry to avoid multiple instantiations
        public static IBlauSpace create(int dimension, string [] names, double [] min, double [] max)
        {
            BlauSpace s = new BlauSpace(dimension, names, min, max);

            // register new instances with the registry
            BlauSpaceRegistry.Instance().add(s);
            // query the registry for canonical representative
            IBlauSpace s_validated = BlauSpaceRegistry.Instance().validate(s);

            return(s_validated);
        }