Kodi Docs 20.0
Kodi is an open source media player and entertainment hub.
ADDON::CScraper Class Reference

#include <Scraper.h>

Inheritance diagram for ADDON::CScraper:
ADDON::CAddon ADDON::IAddon

Public Member Functions

 CScraper (const AddonInfoPtr &addonInfo, TYPE addonType)
 
bool SetPathSettings (CONTENT_TYPE content, const std::string &xml)
 Set the scraper settings for a particular path from an XML string Loads the default and user settings (if not already loaded) and, if the given XML string is non-empty, overrides the user settings with the XML. More...
 
std::string GetPathSettings ()
 Get the scraper settings for a particular path in the form of an XML string Loads the default and user settings (if not already loaded) and returns the user settings in the form or an XML string. More...
 
void ClearCache ()
 Clear any previously cached results for this scraper Any previously cached files are cleared if they have been cached for longer than the specified cachepersistence. More...
 
CONTENT_TYPE Content () const
 
bool RequiresSettings () const
 
bool Supports (const CONTENT_TYPE &content) const
 
bool IsInUse () const override
 
bool IsNoop ()
 
bool IsPython () const
 
CScraperUrl NfoUrl (const std::string &sNfoContent)
 
CScraperUrl ResolveIDToUrl (const std::string &externalID)
 Resolve an external ID (e.g. MusicBrainz IDs) to a URL using scrapers If we have an ID in hand, e.g. MusicBrainz IDs or TheTVDB Season IDs we can get directly to a URL instead of searching by name and choosing from the search results. The correct scraper type should be used to get the right URL for a given ID, so we can differentiate albums, artists, TV Seasons, etc. More...
 
std::vector< CScraperUrlFindMovie (XFILE::CCurlFile &fcurl, const std::string &movieTitle, int movieYear, bool fFirst)
 
std::vector< MUSIC_GRABBER::CMusicAlbumInfoFindAlbum (XFILE::CCurlFile &fcurl, const std::string &sAlbum, const std::string &sArtist="")
 
std::vector< MUSIC_GRABBER::CMusicArtistInfoFindArtist (XFILE::CCurlFile &fcurl, const std::string &sArtist)
 
VIDEO::EPISODELIST GetEpisodeList (XFILE::CCurlFile &fcurl, const CScraperUrl &scurl)
 
bool GetVideoDetails (XFILE::CCurlFile &fcurl, const CScraperUrl &scurl, bool fMovie, CVideoInfoTag &video)
 
bool GetAlbumDetails (XFILE::CCurlFile &fcurl, const CScraperUrl &scurl, CAlbum &album)
 
bool GetArtistDetails (XFILE::CCurlFile &fcurl, const CScraperUrl &scurl, const std::string &sSearch, CArtist &artist)
 
bool GetArtwork (XFILE::CCurlFile &fcurl, CVideoInfoTag &details)
 
- Public Member Functions inherited from ADDON::CAddon
 CAddon (const AddonInfoPtr &addonInfo, TYPE addonType)
 
 ~CAddon () override=default
 
TYPE MainType () const override
 To get the main type of this addon. More...
 
TYPE Type () const override
 To get the on this CAddon class processed addon type. More...
 
bool HasType (TYPE type) const override
 To check complete addon (not only this) contains a type. More...
 
bool HasMainType (TYPE type) const override
 To check complete addon (not only this) has a specific type defined in its first extension point including the provided subcontent e.g. video or audio. More...
 
const CAddonTypeType (TYPE type) const
 The get for given addon type information and extension data. More...
 
std::string ID () const override
 
std::string Name () const override
 
bool IsBinary () const override
 
AddonVersion Version () const override
 
AddonVersion MinVersion () const override
 
std::string Summary () const override
 
std::string Description () const override
 
std::string Path () const override
 
std::string Profile () const override
 
std::string LibPath () const override
 
std::string Author () const override
 
std::string ChangeLog () const override
 
std::string Icon () const override
 
ArtMap Art () const override
 
std::vector< std::string > Screenshots () const override
 
std::string Disclaimer () const override
 
AddonLifecycleState LifecycleState () const override
 
std::string LifecycleStateDescription () const override
 
CDateTime InstallDate () const override
 
CDateTime LastUpdated () const override
 
CDateTime LastUsed () const override
 
std::string Origin () const override
 
std::string OriginName () const override
 
uint64_t PackageSize () const override
 
const InfoMapExtraInfo () const override
 
const std::vector< DependencyInfo > & GetDependencies () const override
 
std::string FanArt () const override
 
bool HasSettings () override
 Check whether the this addon can be configured or not. More...
 
virtual bool HasUserSettings ()
 Check whether the user has configured this addon or not. More...
 
void SaveSettings () override
 Save any user configured settings. More...
 
void UpdateSetting (const std::string &key, const std::string &value) override
 Update a user-configured setting with a new value. More...
 
bool UpdateSettingBool (const std::string &key, bool value) override
 Update a user-configured setting with a new boolean value. More...
 
bool UpdateSettingInt (const std::string &key, int value) override
 Update a user-configured setting with a new integer value. More...
 
bool UpdateSettingNumber (const std::string &key, double value) override
 Update a user-configured setting with a new number value. More...
 
bool UpdateSettingString (const std::string &key, const std::string &value) override
 Update a user-configured setting with a new string value. More...
 
std::string GetSetting (const std::string &key) override
 Retrieve a particular settings value If a previously configured user setting is available, we return it's value, else we return the default (if available) More...
 
bool GetSettingBool (const std::string &key, bool &value) override
 Retrieve a particular settings value as boolean If a previously configured user setting is available, we return it's value, else we return the default (if available) More...
 
bool GetSettingInt (const std::string &key, int &value) override
 Retrieve a particular settings value as integer If a previously configured user setting is available, we return it's value, else we return the default (if available) More...
 
bool GetSettingNumber (const std::string &key, double &value) override
 Retrieve a particular settings value as number If a previously configured user setting is available, we return it's value, else we return the default (if available) More...
 
bool GetSettingString (const std::string &key, std::string &value) override
 Retrieve a particular settings value as string If a previously configured user setting is available, we return it's value, else we return the default (if available) More...
 
std::shared_ptr< CAddonSettingsGetSettings () override
 
AddonVersion GetDependencyVersion (const std::string &dependencyID) const override
 get the required version of a dependency. More...
 
bool MeetsVersion (const AddonVersion &versionMin, const AddonVersion &version) const override
 return whether or not this addon satisfies the given version requirements More...
 
bool ReloadSettings () override
 
void ResetSettings () override
 
AddonPtr GetRunningInstance () const override
 retrieve the running instance of an add-on if it persists while running. More...
 
void OnPreInstall () override
 
void OnPostInstall (bool update, bool modal) override
 
void OnPreUnInstall () override
 
void OnPostUnInstall () override
 
- Public Member Functions inherited from ADDON::IAddon
virtual ~IAddon ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from ADDON::CAddon
virtual bool SettingsInitialized () const
 Whether or not the settings have been initialized. More...
 
virtual bool SettingsLoaded () const
 Whether or not the settings have been loaded. More...
 
bool LoadSettings (bool bForce, bool loadUserSettings=true)
 Load the default settings and override these with any previously configured user settings. More...
 
virtual bool LoadUserSettings ()
 Load the user settings. More...
 
virtual bool HasSettingsToSave () const
 
virtual bool SettingsFromXML (const CXBMCTinyXML &doc, bool loadDefaults=false)
 Parse settings from an XML document. More...
 
virtual bool SettingsToXML (CXBMCTinyXML &doc) const
 Write settings into an XML document. More...
 
- Protected Attributes inherited from ADDON::CAddon
const AddonInfoPtr m_addonInfo
 
std::string m_userSettingsPath
 

Constructor & Destructor Documentation

◆ CScraper()

ADDON::CScraper::CScraper ( const AddonInfoPtr addonInfo,
TYPE  addonType 
)
explicit

Member Function Documentation

◆ ClearCache()

void ADDON::CScraper::ClearCache ( )

Clear any previously cached results for this scraper Any previously cached files are cleared if they have been cached for longer than the specified cachepersistence.

◆ Content()

CONTENT_TYPE ADDON::CScraper::Content ( ) const
inline

◆ FindAlbum()

std::vector< CMusicAlbumInfo > ADDON::CScraper::FindAlbum ( XFILE::CCurlFile fcurl,
const std::string &  sAlbum,
const std::string &  sArtist = "" 
)

◆ FindArtist()

std::vector< CMusicArtistInfo > ADDON::CScraper::FindArtist ( XFILE::CCurlFile fcurl,
const std::string &  sArtist 
)

◆ FindMovie()

std::vector< CScraperUrl > ADDON::CScraper::FindMovie ( XFILE::CCurlFile fcurl,
const std::string &  movieTitle,
int  movieYear,
bool  fFirst 
)

◆ GetAlbumDetails()

bool ADDON::CScraper::GetAlbumDetails ( XFILE::CCurlFile fcurl,
const CScraperUrl scurl,
CAlbum album 
)

◆ GetArtistDetails()

bool ADDON::CScraper::GetArtistDetails ( XFILE::CCurlFile fcurl,
const CScraperUrl scurl,
const std::string &  sSearch,
CArtist artist 
)

◆ GetArtwork()

bool ADDON::CScraper::GetArtwork ( XFILE::CCurlFile fcurl,
CVideoInfoTag details 
)

◆ GetEpisodeList()

EPISODELIST ADDON::CScraper::GetEpisodeList ( XFILE::CCurlFile fcurl,
const CScraperUrl scurl 
)

◆ GetPathSettings()

std::string ADDON::CScraper::GetPathSettings ( )

Get the scraper settings for a particular path in the form of an XML string Loads the default and user settings (if not already loaded) and returns the user settings in the form or an XML string.

Returns
a string containing the XML settings
See also
SetPathSettings

◆ GetVideoDetails()

bool ADDON::CScraper::GetVideoDetails ( XFILE::CCurlFile fcurl,
const CScraperUrl scurl,
bool  fMovie,
CVideoInfoTag video 
)

◆ IsInUse()

bool ADDON::CScraper::IsInUse ( ) const
overridevirtual

Reimplemented from ADDON::CAddon.

◆ IsNoop()

bool ADDON::CScraper::IsNoop ( )

◆ IsPython()

bool ADDON::CScraper::IsPython ( ) const
inline

◆ NfoUrl()

CScraperUrl ADDON::CScraper::NfoUrl ( const std::string &  sNfoContent)

◆ RequiresSettings()

bool ADDON::CScraper::RequiresSettings ( ) const
inline

◆ ResolveIDToUrl()

CScraperUrl ADDON::CScraper::ResolveIDToUrl ( const std::string &  externalID)

Resolve an external ID (e.g. MusicBrainz IDs) to a URL using scrapers If we have an ID in hand, e.g. MusicBrainz IDs or TheTVDB Season IDs we can get directly to a URL instead of searching by name and choosing from the search results. The correct scraper type should be used to get the right URL for a given ID, so we can differentiate albums, artists, TV Seasons, etc.

Parameters
externalIDthe external ID - e.g. MusicBrainzArtist/AlbumID
Returns
a populated URL pointing to the details page for the given ID or an empty URL if we couldn't resolve the ID.

◆ SetPathSettings()

bool ADDON::CScraper::SetPathSettings ( CONTENT_TYPE  content,
const std::string &  xml 
)

Set the scraper settings for a particular path from an XML string Loads the default and user settings (if not already loaded) and, if the given XML string is non-empty, overrides the user settings with the XML.

Parameters
contentContent type of the path
xmlstring of XML with the settings. If non-empty this overrides any saved user settings.
Returns
true if settings are available, false otherwise
See also
GetPathSettings

◆ Supports()

bool ADDON::CScraper::Supports ( const CONTENT_TYPE content) const

The documentation for this class was generated from the following files: