# Target Locations

###### Identifier:

org.eclipse.pde.core.targetLocations

###### Since:

3.8

###### Description:

This extension point allows clients to contribute their own implementations of target locations, which provide plug-ins and other content to the target platform.

###### Configuration Markup:

<!ELEMENT extension (targetLocation)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED>

<!ELEMENT targetLocation EMPTY>

<!ATTLIST targetLocation

type CDATA #REQUIRED

locationFactory CDATA #IMPLIED

canUpdate (true | false) >

- type - A string identifier for instances of this target location. Must match with the type returned by the getType() method in the ITargetLocation implementation.
- locationFactory - Factory implementing `ITargetLocationFactory`. Used to create new instances of this target location.
- canUpdate - Specifies if this target location can update itself. Providing true will notifiy the location if update is sought. If false, the update notfication will not be sent.

###### Examples:

The following is an example of the `targetLocations` extension:

     <extension
      id="org.eclipse.pde.core.customlocation"
      name="Custom Location"
      point="org.eclipse.pde.core.targetLocations">
      <targetLocation
       locationFactory="org.eclipse.pde.core.CustomLocationFactory"
       type="CustomLocation">
      </targetLocation>
     </extension>

In the example above, the name and id of the target are declared in the plugin.xml, but the factory `org.eclipse.pde.core.CustomLocationFactory` to create the target location comes from the contributing plug-in.

###### API Information:

Extensions must provide a factory implementing ITargetLocationFactory. The factory will be used to instantiate ITargetLocation objects. To display an implementation in the PDE UI, clients must supply an adapter factory that adapts their ITargetLocation implementation to the following: `IWizardNode`: Provides a IWizardNode object to supply a wizard for creating new locations of this type `ILabelProvider`: Provides label text and image for the location implementation in the UI For more information, consult ITargetLocation

Copyright (c) 2011 IBM Corporation and others.
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-v20.html/ SPDX-License-Identifier: EPL-2.0.