| 
				 public 
				
				
				 | 
			#
			__construct( string $basepath = __DIR__, string $classprefix = 'JInstallerAdapter', string $adapterfolder = 'adapter' )
				
Constructor Parameters
						$basepathstring- $basepath Base Path of the adapters$classprefixstring- $classprefix Class prefix of adapters$adapterfolderstring- $adapterfolder Name of folder to append to base pathSince
							3.1
 Overrides | 
		
			| 
				 public static
				JInstaller | 
			#
			getInstance( string $basepath = __DIR__, string $classprefix = 'JInstallerAdapter', string $adapterfolder = 'adapter' )
				
Returns the global Installer object, only creating it if it doesn't already
exist. 
				
Returns the global Installer object, only creating it if it doesn't already
exist. Parameters
						$basepathstring- $basepath Base Path of the adapters$classprefixstring- $classprefix Class prefix of adapters$adapterfolderstring- $adapterfolder Name of folder to append to base pathReturnsSince
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			isOverwrite( )
				
Get the allow overwrite switch 
				
Get the allow overwrite switch Returns
						boolean- Allow overwrite switch
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			setOverwrite( boolean $state = false )
				
Set the allow overwrite switch 
				
Set the allow overwrite switch Parameters
						$stateboolean- $state Overwrite switch stateReturns
						boolean- True it state is set, false if it is not
 Since
							3.1
 | 
		
			| 
				 public 
				string
				
				 | 
			#
			getRedirectUrl( )
				
Get the redirect location 
				
Get the redirect location Returns
						string- Redirect location (or null)
 Since
							3.1
 | 
		
			| 
				 public 
				
				
				 | 
			#
			setRedirectUrl( string $newurl )
				
Set the redirect location 
				
Set the redirect location Parameters
						$newurlstring- $newurl New redirect locationSince
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			isPackageUninstall( )
				
Get whether this installer is uninstalling extensions which are part of a
package 
				
Get whether this installer is uninstalling extensions which are part of a
package Returns
						boolean
 Since
							3.7.0
 | 
		
			| 
				 public 
				
				
				 | 
			#
			setPackageUninstall( boolean $uninstall )
				
Set whether this installer is uninstalling extensions which are part of a
package 
				
Set whether this installer is uninstalling extensions which are part of a
package Parameters
						$uninstallboolean- $uninstall True if a package triggered the uninstall, false otherwiseSince
							3.7.0
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			isUpgrade( )
				
Get the upgrade switch Returns
						boolean
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			setUpgrade( boolean $state = false )
				
Set the upgrade switch Parameters
						$stateboolean- $state Upgrade switch stateReturns
						boolean- True if upgrade, false otherwise
 Since
							3.1
 | 
		
			| 
				 public 
				SimpleXMLElement | 
			#
			getManifest( )
				
Get the installation manifest object 
				
Get the installation manifest object ReturnsSince
							3.1
 | 
		
			| 
				 public 
				string
				
				 | 
			#
			getPath( string $name, string $default = null )
				
Get an installer path by name 
				
Get an installer path by name Parameters
						$namestring- $name Path name$defaultstring- $default Default valueReturns
						string- Path
 Since
							3.1
 | 
		
			| 
				 public 
				
				
				 | 
			#
			setPath( string $name, string $value )
				
Sets an installer path by name 
				
Sets an installer path by name Parameters
						$namestring- $name Path name$valuestring- $value PathSince
							3.1
 | 
		
			| 
				 public 
				
				
				 | 
			#
			pushStep( array $step )
				
Pushes a step onto the installer stack for rolling back steps 
				
Pushes a step onto the installer stack for rolling back steps Parameters
						$steparray- $step Installer stepSince
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			abort( string $msg = null, string $type = null )
				
Installation abort method 
				
Installation abort method Parameters
						$msgstring- $msg Abort message from the installer$typestring- $type Package type if definedReturns
						boolean- True if successful
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			install( string $path = null )
				
Package installation method 
				
Package installation method Parameters
						$pathstring- $path Path to package source folderReturns
						boolean- True if successful
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			discover_install( integer $eid = null )
				
Discovered package installation method 
				
Discovered package installation method Parameters
						$eidinteger- $eid Extension IDReturns
						boolean- True if successful
 Since
							3.1
 | 
		
			| 
				 public 
				JInstallerExtension[] | 
			#
			discover( )
				
Extension discover method 
				
Extension discover method Asks each adapter to find extensions ReturnsSince
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			update( string $path = null )
				
Package update method Parameters
						$pathstring- $path Path to package source folderReturns
						boolean- True if successful
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			uninstall( string $type, mixed $identifier, integer $cid = 0 )
				
Package uninstallation method 
				
Package uninstallation method Parameters
						$typestring- $type Package type$identifiermixed- $identifier Package identifier for adapter$cidinteger- $cid Application ID; deprecated in 1.6Returns
						boolean- True if successful
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			refreshManifestCache( integer $eid )
				
Refreshes the manifest cache stored in #__extensions 
				
Refreshes the manifest cache stored in #__extensions Parameters
						$eidinteger- $eid Extension IDReturns
						boolean
 Since
							3.1
 | 
		
			| 
				 public 
				boolean|JInstallerAdapter | 
			#
			setupInstall( string $route = 'install', boolean $returnAdapter = false )
				
Prepare for installation: this method sets the installation directory, finds
and checks the installation file and verifies the installation type. 
				
Prepare for installation: this method sets the installation directory, finds
and checks the installation file and verifies the installation type. Parameters
						$routestring- $route The install route being followed$returnAdapterboolean- $returnAdapter Flag to return the instantiated adapterReturns
						boolean|JInstallerAdapter - JInstallerAdapter object if explicitly requested otherwise boolean
					 Since
							3.1
 | 
		
			| 
				 public 
				mixed
				
				 | 
			#
			parseQueries( SimpleXMLElement$element )
				
Backward compatible method to parse through a queries element of the
installation manifest file and take appropriate action. 
				
Backward compatible method to parse through a queries element of the
installation manifest file and take appropriate action. ParametersReturns
						mixed- Number of queries processed or False on error
 Since
							3.1
 | 
		
			| 
				 public 
				mixed
				
				 | 
			#
			parseSQLFiles( object $element )
				
Method to extract the name of a discreet installation sql file from the
installation manifest file. 
				
Method to extract the name of a discreet installation sql file from the
installation manifest file. Parameters
						$elementobject- $element The XML node to processReturns
						mixed- Number of queries processed or False on error
 Since
							3.1
 | 
		
			| 
				 public 
				
				
				 | 
			#
			setSchemaVersion( SimpleXMLElement$schema, integer $eid )
				
Set the schema version for an extension by looking at its latest update 
				
Set the schema version for an extension by looking at its latest update ParametersSince
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			parseSchemaUpdates( SimpleXMLElement$schema, integer $eid )
				
Method to process the updates for an item 
				
Method to process the updates for an item Parameters
						$schema- $schema The XML node to processSimpleXMLElement$eidinteger- $eid Extension IdentifierReturns
						boolean- Result of the operations
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			parseFiles( SimpleXMLElement$element, integer $cid = 0, array $oldFiles = null, array $oldMD5 = null )
				
Method to parse through a files element of the installation manifest and take
appropriate action. 
				
Method to parse through a files element of the installation manifest and take
appropriate action. Parameters
						$element- $element The XML node to processSimpleXMLElement$cidinteger- $cid Application ID of application to install to$oldFilesarray- $oldFiles List of old files (SimpleXMLElement's)$oldMD5array- $oldMD5 List of old MD5 sums (indexed by filename with value as MD5)Returns
						boolean- True on success
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			parseLanguages( SimpleXMLElement$element, integer $cid = 0 )
				
Method to parse through a languages element of the installation manifest and
take appropriate action. 
				
Method to parse through a languages element of the installation manifest and
take appropriate action. Parameters
						$element- $element The XML node to processSimpleXMLElement$cidinteger- $cid Application ID of application to install toReturns
						boolean- True on success
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			parseMedia( SimpleXMLElement$element, integer $cid = 0 )
				
Method to parse through a media element of the installation manifest and take
appropriate action. 
				
Method to parse through a media element of the installation manifest and take
appropriate action. Parameters
						$element- $element The XML node to processSimpleXMLElement$cidinteger- $cid Application ID of application to install toReturns
						boolean- True on success
 Since
							3.1
 | 
		
			| 
				 public 
				string
				
				 | 
			#
			getParams( )
				
Method to parse the parameters of an extension, build the JSON string for its
default parameters, and return the JSON string. 
				
Method to parse the parameters of an extension, build the JSON string for its
default parameters, and return the JSON string. Returns
						string- JSON string of parameter values
 Since
							3.1
 Note
							This method must always return a JSON compliant string
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			copyFiles( array $files, boolean $overwrite = null )
				
Copyfiles Copy files from source directory to the target directory Parameters
						$filesarray- $files Array with filenames$overwriteboolean- $overwrite True if existing files can be replacedReturns
						boolean- True on success
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			removeFiles( object $element, integer $cid = 0 )
				
Method to parse through a files element of the installation manifest and
remove the files that were installed 
				
Method to parse through a files element of the installation manifest and
remove the files that were installed Parameters
						$elementobject- $element The XML node to process$cidinteger- $cid Application ID of application to remove fromReturns
						boolean- True on success
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			copyManifest( integer $cid = 1 )
				
Copies the installation manifest file to the extension folder in the given
client 
				
Copies the installation manifest file to the extension folder in the given
client Parameters
						$cidinteger- $cid Where to copy the installfile [optional: defaults to 1 (admin)]Returns
						boolean- True on success, False on error
 Since
							3.1
 | 
		
			| 
				 public 
				boolean
				
				 | 
			#
			findManifest( )
				
Tries to find the package manifest file 
				
Tries to find the package manifest file Returns
						boolean- True on success, False on error
 Since
							3.1
 | 
		
			| 
				 public 
				SimpleXMLElement|null | 
			#
			isManifest( string $file )
				
Is the XML file a valid Joomla installation manifest file. 
				
Is the XML file a valid Joomla installation manifest file. Parameters
						$filestring- $file An xmlfile path to checkReturnsSince
							3.1
 | 
		
			| 
				 public 
				string
				
				 | 
			#
			generateManifestCache( )
				
Generates a manifest cache 
				
Generates a manifest cache Returns
						string- serialised manifest data
 Since
							3.1
 | 
		
			| 
				 public 
				object
				
				 | 
			#
			cleanDiscoveredExtension( string $type, string $element, string $folder = '', integer $client = 0 )
				
Cleans up discovered extensions if they're being installed some other way 
				
Cleans up discovered extensions if they're being installed some other way Parameters
						$typestring- $type The type of extension (component, etc)$elementstring- $element Unique element identifier (e.g. com_content)$folderstring- $folder The folder of the extension (plugins; e.g. system)$clientinteger- $client The client application (administrator or site)Returns
						object- Result of query
 Since
							3.1
 | 
		
			| 
				 public 
				array
				
				 | 
			#
			findDeletedFiles( array $old_files, array $new_files )
				
Compares two "files" entries to find deleted files/folders 
				
Compares two "files" entries to find deleted files/folders Parameters
						$old_filesarray- $old_files An array of SimpleXMLElement objects that are the old files$new_filesarray- $new_files An array of SimpleXMLElement objects that are the new filesReturns
						array- An array with the delete files and folders in findDeletedFiles[files] and
findDeletedFiles[folders] respectively
 Since
							3.1
 | 
		
			| 
				 public 
				array
				
				 | 
			#
			loadMD5Sum( string $filename )
				
Loads an MD5SUMS file into an associative array 
				
Loads an MD5SUMS file into an associative array Parameters
						$filenamestring- $filename Filename to loadReturns
						array- Associative array with filenames as the index and the MD5 as the value
 Since
							3.1
 | 
		
			| 
				 public static
				array
				
				 | 
			#
			parseXMLInstallFile( string $path )
				
Parse a XML install manifest file. 
				
Parse a XML install manifest file. XML Root tag should be 'install' except for languages which use meta
file. Parameters
						$pathstring- $path Full path to XML file.Returns
						array- XML metadata.
 Since
							12.1
 | 
		
			| 
				 public 
				JInstallerAdapter | 
			#
			getAdapter( string $name, array $options = array() )
				
Fetches an adapter and adds it to the internal storage if an instance is not
set while also ensuring its a valid adapter name 
				
Fetches an adapter and adds it to the internal storage if an instance is not
set while also ensuring its a valid adapter name Deprecated
							4.0 The internal adapter cache will no longer be supported, use loadAdapter() to
fetch an adapter instance
 Parameters
						$namestring- $name Name of adapter to return$optionsarray- $options Adapter optionsReturnsSince
							3.4
 Overrides | 
		
			| 
				 public 
				array
				
				 | 
			#
			getAdapters( array $options = array(), array $custom = array() )
				
Gets a list of available install adapters. 
				
Gets a list of available install adapters. Parameters
						$optionsarray- $options An array of options to inject into the adapter$customarray- $custom Array of custom install adaptersReturns
						array- An array of available install adapters.
 Since
							3.4
 Note
							As of 4.0, this method will only return the names of available adapters and will
not instantiate them and store to the $_adapters class var.
 | 
		
			| 
				 public 
				JInstallerAdapter | 
			#
			loadAdapter( string $adapter, array $options = array() )
				
Method to load an adapter instance 
				
Method to load an adapter instance Parameters
						$adapterstring- $adapter Adapter name$optionsarray- $options Adapter optionsReturnsThrowsSince
							3.4
 | 
		
			| 
				 public 
				
				
				 | 
			#
			loadAllAdapters( array $options = array() )
				
Loads all adapters. Deprecated
							4.0 Individual adapters should be instantiated as needed
 Parameters
						$optionsarray- $options Adapter optionsSince
							3.4
 Note
							This method is serving as a proxy of the legacy JAdapter API into the preferred
API
 Overrides |