public static IFundamentalPlatformSpecifics Get()
        {
            if (_dead)
            {
                throw new Exception("Can't initialize FundamentalPlatformSpecifics");
            }

            if (_iFundamentalPlatformSpecifics == null)
            {
                lock (SyncLock)
                {
                    if (_iFundamentalPlatformSpecifics == null)
                    {
                        string typeName = "Simpl.Fundamental.PlatformSpecifics.FundamentalPlatformSpecificsImpl, Simpl.Fundamental.DotNet";
                        Type   platformSpecificsType = Type.GetType(typeName);
                        if (platformSpecificsType == null)
                        {
                            typeName = "Simpl.Fundamental.PlatformSpecifics.FundamentalPlatformSpecificsImpl, Simpl.Fundamental.WindowsStoreApps";
                            platformSpecificsType = Type.GetType(typeName);
                        }
                        if (platformSpecificsType == null)
                        {
                            _dead = true;
                            throw new Exception("Can't initialize FundamentalPlatformSpecifics");
                        }
                        _iFundamentalPlatformSpecifics = (IFundamentalPlatformSpecifics)Activator.CreateInstance(platformSpecificsType);
                    }
                }
            }

            return(_iFundamentalPlatformSpecifics);
        }
        public static IFundamentalPlatformSpecifics Get()
        {
            if (_dead)
                throw new Exception("Can't initialize FundamentalPlatformSpecifics");

            if (_iFundamentalPlatformSpecifics == null)
            {
                lock (SyncLock)
                {

                    if (_iFundamentalPlatformSpecifics == null)
                    {
                        string typeName = "Simpl.Fundamental.PlatformSpecifics.FundamentalPlatformSpecificsImpl, Simpl.Fundamental.DotNet";
                        Type platformSpecificsType = Type.GetType(typeName);
                        if (platformSpecificsType == null)
                        {
                            typeName = "Simpl.Fundamental.PlatformSpecifics.FundamentalPlatformSpecificsImpl, Simpl.Fundamental.WindowsStoreApps";
                            platformSpecificsType = Type.GetType(typeName);
                        }
                        if (platformSpecificsType == null)
                        {
                            _dead = true;
                            throw new Exception("Can't initialize FundamentalPlatformSpecifics");
                        }
                        _iFundamentalPlatformSpecifics = (IFundamentalPlatformSpecifics)Activator.CreateInstance(platformSpecificsType);
                    }
                }
            }

            return _iFundamentalPlatformSpecifics;
        }
 public static void Set(IFundamentalPlatformSpecifics that)
 {
     _iFundamentalPlatformSpecifics = that;
 }
 public static void Set(IFundamentalPlatformSpecifics that)
 {
     _iFundamentalPlatformSpecifics = that;
 }