public OperationResult <NavigationItem> UpdateCoordinates(string token, double latitude, double longitude, string address, double?accuracy) { var validator = new CoordinatesValidator(latitude, longitude); if (validator.Validate()) { return(OperationResult <NavigationItem> .Failure(validator.ToString())); } if (token == null) { return(OperationResult <NavigationItem> .Failure("Token has to be provided")); } var item = _navigationManager.GetItem(token); if (item == null) { return(OperationResult <NavigationItem> .Failure("Token doesn't match.")); } item.Address = address ?? ""; item.Latitude = latitude; item.Longitude = longitude; item.Accuracy = accuracy; return(OperationResult <NavigationItem> .Success(item)); }
public OperationResult <TokensModel> CreateSession(double latitude, double longitude, int duration, string address, double?accuracy) { var coordinatesValidator = new CoordinatesValidator(latitude, longitude); if (coordinatesValidator.Validate()) { return(OperationResult <TokensModel> .Failure(coordinatesValidator.ToString())); } var durationValidator = new DurationValidator(duration); if (durationValidator.Validate()) { return(OperationResult <TokensModel> .Failure(durationValidator.ToString())); } var token = _navigationManager.CreateItem(latitude, longitude, duration, address, accuracy); return(OperationResult <TokensModel> .Success(token)); }