Example #1
0
        public Tenant AddTenant()
        {
            var tenant = new Tenant();

            Tenants.Add(tenant);
            return(tenant);
        }
 // ....
 public void AddSampleData()
 {
     // add samples only if there's no record.
     if (Tenants.Count() == 0)
     {
         Tenants.Add(new Tenant
         {
             Id       = MultitenantDbContext.Tenant1Id,
             Name     = "Imaginary corp.",
             HostName = "imaginary.example.com"
         });
         Tenants.Add(new Tenant
         {
             Id       = MultitenantDbContext.Tenant2Id,
             Name     = "The Very Big corp.",
             HostName = "big.example.com"
         });
         SaveChanges();
     }
 }
Example #3
0
 private static void MakeTenants(int count)
 {
     for (int i = 0; i < count; i++)
     {
         var tenantId = Guid.NewGuid();
         var model    = new TenantBase
         {
             _id     = tenantId,
             Contact = new ContactBase()
             {
                 DisplayName = tenantId.ToString(), ContactEmail = $"{tenantId}@my.co", ContactName = $"", ContactPhone = ""
             }
         };
         var config = new List <KeyValuePair <string, string> >();
         foreach (var k in ConfigKeys)
         {
             var kv = new KeyValuePair <string, string>(k, Faker.Lorem.Word());
             config.Add(kv);
         }
         model.Configuration = MakeConfigs();
         Tenants.Add(tenantId);
         tp.TenantAddUpdate(model);
     }
 }
Example #4
0
 public Distribution(IDistributable tenant) : this()
 {
     Tenants.Add(tenant);
 }
        public ObjectStoreContext()
        {
            var tenants = ObjectStore.Current.ReadAllObjects <Tenant>(ObjectStoreRoot);

            foreach (var tenant in tenants)
            {
                Tenants.Add(tenant);
            }

            var sites = ObjectStore.Current.ReadAllObjects <Site>(ObjectStoreRoot);

            foreach (var site in sites)
            {
                Sites.Add(site);
            }

            var devices = ObjectStore.Current.ReadAllObjects <Device>(ObjectStoreRoot);

            foreach (var device in devices)
            {
                Devices.Add(device);
            }

            var authenticationProfiles = ObjectStore.Current.ReadAllObjects <AuthenticationProfile>(ObjectStoreRoot);

            foreach (var authenticationProfile in authenticationProfiles)
            {
                AuthenticationProfiles.Add(authenticationProfile);
            }

            var deviceTypes = ObjectStore.Current.ReadAllObjects <DeviceType>(ObjectStoreRoot);

            foreach (var deviceType in deviceTypes)
            {
                DeviceTypes.Add(deviceType);
            }

            var unknownDeviceType = DeviceTypes.SingleOrDefault(x => x.Id == Guid.Empty);

            if (unknownDeviceType == null)
            {
                unknownDeviceType = new DeviceType
                {
                    Id    = Guid.Empty,
                    Name  = "{Not set}",
                    Notes = "This device type is reserved for items which have no device type set"
                };

                DeviceTypes.Add(unknownDeviceType);
            }

            Tenants.CollectionChanged += Tenants_CollectionChanged;
            Sites.CollectionChanged   += Sites_CollectionChanged;
            Devices.CollectionChanged += Devices_CollectionChanged;
            AuthenticationProfiles.CollectionChanged += AuthenticationProfiles_CollectionChanged;
            DeviceTypes.CollectionChanged            += DeviceTypes_CollectionChanged;

            var localTenant = Tenants.SingleOrDefault(x => x.Name.ToLowerInvariant() == "{local}");

            if (localTenant == null)
            {
                localTenant = new Tenant
                {
                    Id    = Guid.NewGuid(),
                    Name  = "{Local}",
                    Notes = "Local tenant"
                };

                Tenants.Add(localTenant);
            }

            var localSite = Sites.SingleOrDefault(x => x.Name.ToLowerInvariant() == "{local site}");

            if (localSite == null)
            {
                localSite = new Site
                {
                    Id       = Guid.NewGuid(),
                    TenantId = localTenant.Id,
                    Name     = "{Local Site}",
                    Notes    = "Local site"
                };

                Sites.Add(localSite);
            }
        }