# This file is part of stov, written by Helmut Pozimski 2012-2015. # # stov is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, version 2 of the License. # # stov is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with stov. If not, see . # -*- coding: utf8 -*- class DBConnectionFailedException(Exception): """ This exception will be raised when the initial connetion attempt to the database fails. """ def __init__(self): self.__message = _("Could not access the database, please check path" " and permissions and try again!") def __str__(self): return self.__message class DBWriteAccessFailedException(Exception): """This exception will be raised when a write access to the database fails (e.g. when the database file permissions are set to read only). """ def __init__(self): self.__message = _("Write access to the database failed, please check " "file permissions and the file system and try" " again!") def __str__(self): return self.__message class SubscriptionNotFoundException(Exception): """This exception will be raised when a requested subscription can't be found in the database """ def __init__(self): self.__message = _("The subscription you requested could not be " "found in the database, requested action aborted.") def __str__(self): return self.__message class NoDataFromYoutubeAPIException(Exception): """This exception will be raised when the Connection to the youtube API failed or no data was returned """ def __init__(self): self.__message = _("The connection to the youtube API failed or " "no data was returned.") def __str__(self): return self.__message class YoutubeAPITimeoutException(Exception): """This exception will be raised when an API request times out""" def __init__(self, title): self.__message = _("The API Request timed out for subscription %s," "please try again later.") % title def __str__(self): return self.__message class ConfigFileWriteErrorException(Exception): """This exception will be raised when a write access to the configuration file fails. """ def __init__(self): self.__message = _("The configuration could not be written, please" " check that the configuration direcroty exists" " and is writable.") def __str__(self): return self.__message class DirectoryCreationFailedException(Exception): """This exception will be raised when the creation of a directory failed. """ def __init__(self): self.__message = _("The directory could not be created, " "please check that the parent directory " "exists and is writable") def __str__(self): return self.__message class ConfigFileReadErrorException(Exception): """This exception will be raised when the configuration file couldn't be opened for reading """ def __init__(self): self.__message = _("The configuration could not be read, please check " "that the configuration file exists and is " "readable.") def __str__(self): return self.__message class InvalidConfigurationVersionException(Exception): """This exception will be raised when an invalid configuration version is detected. """ def __init__(self): self.__message = _("Invalid config version read.") def __str__(self): return self.__message class SubscriptionDisabledException(Exception): """This exception will be raised when an exception is disabled and a requested action is not taken because of this fact. """ def __init__(self, subscription): self.__message = _("The subscription %s is disabled, videos will" " not be downloaded.") % subscription def __str__(self): return self.__message class DownloadDirectoryCreationFailedException(Exception): """This exception will be raised when the creation of a subscription directory to download a video failed. """ def __init__(self): self.__message = _("The download directory does not exist and can't " "be created. Please check your configuration and " "try again.") def __str__(self): return self.__message class ConfigurationMigrationFailed(Exception): """This exception will be raised when the migration of the configuration to the json format fails. """ def __init__(self): self._message = _("The migration of the configuration to the json " "format failed.") def __str__(self): return self._message class YoutubeDlCallFailed(Exception): """This exception will be raised when a call to youtube-dl fails because of an error returned by youtube-dl. """ def __init__(self): self._message = _("Execution of youtube-dl failed.") def __str__(self): return self._message