예제 #1
0
        public async Task Update(NixGuild guild)
        {
            if (await Store(guild))
            {
                return;
            }

            await storage.UpdateAsync(guild);
        }
예제 #2
0
        public async Task <bool> Store(NixGuild guild)
        {
            if (await storage.ExistsAsync <NixGuild>(CreateProperties(guild)))
            {
                return(false);
            }

            await storage.InsertAsync(guild);

            return(true);
        }
예제 #3
0
        public async Task <bool> Remove(NixGuild guild)
        {
            if (!await storage.ExistsAsync <NixGuild>(CreateProperties(guild)))
            {
                return(false);
            }

            await storage.DeleteAsync <NixGuild>(CreateProperties(guild));

            return(true);
        }
예제 #4
0
        public async Task <NixGuild> Get(SocketGuild guild)
        {
            NixGuild nixGuild = await Get(guild.Id);

            if (nixGuild is null)
            {
                nixGuild = guild.GetNixGuild();
                await Store(nixGuild);

                return(nixGuild);
            }

            return(nixGuild);
        }
예제 #5
0
 private object CreateProperties(NixGuild guild)
 {
     return(new { Id = guild.Id.ToString() });
 }