public IList <IncidentModel> GetFireIncidents()
        {
            string connectionString = ShardManagmentConfig.GetCredentialsConnectionString();
            Shard  shard            = _shardMap.Value.GetMappingForKey((int)DepartmentType.Fire).Shard;

            return(QueryHelper.ExecuteMultiShardQuery(connectionString, IncidentQuery, shard));
        }
Example #2
0
        public IList <IncidentModel> GetAmbulanceIncidents(int cityId)
        {
            string connectionString = ShardManagmentConfig.GetCredentialsConnectionString();
            Shard  shard            = _shardMap.Value.GetMappingForKey((int)DepartmentType.Ambulance).Shard;

            return(QueryHelper.ExecuteMultiShardQuery(connectionString, GetIncidentsQuery(cityId), shard));
        }
        public IList <IncidentModel> GetAllIncidents()
        {
            string connectionString = ShardManagmentConfig.GetCredentialsConnectionString();

            Shard[] shards = _shardMap.Value.GetShards().ToArray();

            return(QueryHelper.ExecuteMultiShardQuery(connectionString, IncidentQuery, shards));
        }
Example #4
0
        public IEnumerable <IncidentModel> GetIncidents(int cityId)
        {
            string connectionString = ShardManagmentConfig.GetCredentialsConnectionString();

            Shard[] shards = _shardMap.Value.GetShards().ToArray();

            var query = GetIncidentsQuery(cityId);

            var incidents = QueryHelper.ExecuteMultiShardQuery(connectionString, query, shards);

            return(incidents);
        }
Example #5
0
        public IncidentModel GetIncident(int city, int incidentId)
        {
            string connectionString = ShardManagmentConfig.GetCredentialsConnectionString();

            Shard[] shards = _shardMap.Value.GetShards().ToArray();

            var query =
                IncidentQuery
                + $@"WHERE i.Id = {incidentId} AND i.CityId = {city};";

            var incidents = QueryHelper.ExecuteMultiShardQuery(connectionString, query, shards);
            var incident  = incidents.FirstOrDefault(i => i.CityId == city && i.Id == incidentId);

            return(incident);
        }