//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.42000
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace WeatherAppClient.WeatherAppServices {
    
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(ConfigurationName="WeatherAppServices.IWeatherAppService")]
    public interface IWeatherAppService {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IWeatherAppService/GetWeather", ReplyAction="http://tempuri.org/IWeatherAppService/GetWeatherResponse")]
        WeatherApp.Entities.Weather GetWeather(string city);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IWeatherAppService/GetWeather", ReplyAction="http://tempuri.org/IWeatherAppService/GetWeatherResponse")]
        System.Threading.Tasks.Task<WeatherApp.Entities.Weather> GetWeatherAsync(string city);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IWeatherAppService/GetWeatherByDateAndCity", ReplyAction="http://tempuri.org/IWeatherAppService/GetWeatherByDateAndCityResponse")]
        WeatherApp.Entities.Weather GetWeatherByDateAndCity(string city, System.DateTime data);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IWeatherAppService/GetWeatherByDateAndCity", ReplyAction="http://tempuri.org/IWeatherAppService/GetWeatherByDateAndCityResponse")]
        System.Threading.Tasks.Task<WeatherApp.Entities.Weather> GetWeatherByDateAndCityAsync(string city, System.DateTime data);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IWeatherAppService/SubmitWeather", ReplyAction="http://tempuri.org/IWeatherAppService/SubmitWeatherResponse")]
        void SubmitWeather(WeatherApp.Entities.Weather weather);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IWeatherAppService/SubmitWeather", ReplyAction="http://tempuri.org/IWeatherAppService/SubmitWeatherResponse")]
        System.Threading.Tasks.Task SubmitWeatherAsync(WeatherApp.Entities.Weather weather);
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public interface IWeatherAppServiceChannel : WeatherAppClient.WeatherAppServices.IWeatherAppService, System.ServiceModel.IClientChannel {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public partial class WeatherAppServiceClient : System.ServiceModel.ClientBase<WeatherAppClient.WeatherAppServices.IWeatherAppService>, WeatherAppClient.WeatherAppServices.IWeatherAppService {
        
        public WeatherAppServiceClient() {
        }
        
        public WeatherAppServiceClient(string endpointConfigurationName) : 
                base(endpointConfigurationName) {
        }
        
        public WeatherAppServiceClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public WeatherAppServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public WeatherAppServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress) {
        }
        
        public WeatherApp.Entities.Weather GetWeather(string city) {
            return base.Channel.GetWeather(city);
        }
        
        public System.Threading.Tasks.Task<WeatherApp.Entities.Weather> GetWeatherAsync(string city) {
            return base.Channel.GetWeatherAsync(city);
        }
        
        public WeatherApp.Entities.Weather GetWeatherByDateAndCity(string city, System.DateTime data) {
            return base.Channel.GetWeatherByDateAndCity(city, data);
        }
        
        public System.Threading.Tasks.Task<WeatherApp.Entities.Weather> GetWeatherByDateAndCityAsync(string city, System.DateTime data) {
            return base.Channel.GetWeatherByDateAndCityAsync(city, data);
        }
        
        public void SubmitWeather(WeatherApp.Entities.Weather weather) {
            base.Channel.SubmitWeather(weather);
        }
        
        public System.Threading.Tasks.Task SubmitWeatherAsync(WeatherApp.Entities.Weather weather) {
            return base.Channel.SubmitWeatherAsync(weather);
        }
    }
}
