InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Facade::ILinkFacade Class Referenceabstract
Inheritance diagram for Facade::ILinkFacade:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_ILINKFACADE }
 

Public Member Functions

LinkResource command methods
virtual ErrorCode CreateResource (IDataBase *db, const URI &uri, LinkClientID clientId, const PMString &formatType, UID &resourceUID) const =0
 
virtual ErrorCode DeleteResources (const UIDList &resources) const =0
 
virtual ErrorCode ReinitResource (const UIDRef &resourceRef, const URI &uri) const =0
 
virtual bool CanRelinkResource (const UIDRef &resourceRef) const =0
 
virtual ErrorCode RelinkResource (const UIDRef &resourceRef, const URI &uri, UIFlags uiFlags) const =0
 
virtual ErrorCode UpdateResourceStates (const UIDList &resources, ILinkManager::OperationType opType) const =0
 
virtual ErrorCode ResolveResources (const UIDList &resources, const URI &relativeURI, bool bIgnoreStamp) const =0
 
virtual ErrorCode FindMissingResources (IDataBase *db, LinkClientID clientId, const URI &relativeURI, bool bIgnoreStamp, bool bUpdateLinks, UIFlags uiFlags, uint32 &nFixed) const =0
 
virtual WideString GetResourceLongName (const UIDRef &resourceRef) const =0
 
virtual PMString GetResourceFormatType (const UIDRef &resourceRef) const =0
 
virtual uint64 GetResourceSize (const UIDRef &resourceRef) const =0
 
virtual uint32 GetResourceLinks (const UIDRef &resourceRef, bool bChildLinksOK, UIDList &links) const =0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Link command methods

enum  LinkStatus {
  kLinkUpToDate = 0, kLinkOutOfDate, kLinkResourceEmbedded, kLinkResourceCached,
  kLinkResourceContained, kLinkResourceMissing, kLinkResourceInaccessible, kLinkResourcePending,
  kLinkResourceUnknown
}
 
virtual ErrorCode CreateLink (IDataBase *db, ILink::LinkType type, LinkClientID clientId, UID objectUID, UID resourceUID, bool bSetLinkModified, UID &linkUID) const =0
 
virtual ErrorCode CreateLink (IDataBase *db, ILink::LinkType type, LinkClientID clientId, UID objectUID, const URI &resourceURI, bool bSetLinkModified, UID &linkUID) const =0
 
virtual ErrorCode CreateLink (IDataBase *db, ClassID classID, LinkClientID clientId, UID objectUID, UID resourceUID, bool bSetLinkModified, UID &linkUID) const =0
 
virtual ErrorCode CreateLink (IDataBase *db, ClassID classID, LinkClientID clientId, UID objectUID, const URI &resourceURI, bool bSetLinkModified, UID &linkUID) const =0
 
virtual ErrorCode DeleteLinks (const UIDList &links, bool bDeleteResource, bool bDeleteChildren) const =0
 
virtual ErrorCode DeleteLinksByObject (const UIDList &objects, bool bDeleteResource, bool bDeleteChildren) const =0
 
virtual ErrorCode AttachLink (const UIDRef &objectRef, UID linkUID) const =0
 
virtual bool CanEmbedLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode EmbedLinks (const UIDList &links) const =0
 
virtual bool CanUnembedLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode UnembedLinks (const UIDList &links, UIFlags uiFlags) const =0
 
virtual ErrorCode UnembedLinks (const UIDList &links, const URI &uri, UIFlags uiFlags) const =0
 
virtual bool CanUpdateLink (const UIDRef &linkRef, bool bForceUpdate) const =0
 
virtual ErrorCode UpdateLink (const UIDRef &linkRef, bool bForceUpdate, UIFlags uiFlags, UID &newLinkUID) const =0
 
virtual ErrorCode UpdateLinks (const UIDList &links, bool bForceUpdate, UIFlags uiFlags, bool bScheduleCmd, UIDList *pNewLinks=nil) const =0
 
virtual ErrorCode UpdateLinksRecursively (const UIDList &links, bool bForceUpdate, UIFlags uiFlags, bool bScheduleCmd) const =0
 
virtual bool CanRelinkLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode RelinkLink (const UIDRef &linkRef, const URI &uri, UIFlags uiFlags, UID &newLinkUID) const =0
 
virtual ErrorCode RelinkLinksToFolder (const UIDList &links, const IDFile &folder, const WideString &extension, UIFlags uiFlags, UIDList &skippedLinks) const =0
 
virtual ErrorCode RelinkLinksExtension (const UIDList &links, const WideString &extension, UIFlags uiFlags, UIDList &skippedLinks) const =0
 
virtual bool CanCopyLinkToFolder (const UIDRef &linkRef) const =0
 
virtual ErrorCode CopyLinksToFolder (const UIDList &links, const IDFile &folder, bool bRelink, UIFlags uiFlags) const =0
 
virtual ErrorCode UpdateLinkStates (const UIDList &links) const =0
 
virtual ErrorCode SetLinkResourceModStates (const UIDList &links, ILink::ResourceModificationState modState) const =0
 
virtual bool CanEditLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode EditLink (const UIDRef &linkRef, const AppInfo &appInfo, PMString *errorString) const =0
 
virtual bool CanGoToSource (const UIDRef &linkRef) const =0
 
virtual ErrorCode GoToSource (const UIDRef &linkRef, PMString *errorString) const =0
 
virtual bool CanRevealLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode RevealLink (const UIDRef &linkRef) const =0
 
virtual bool CanRevealLinkInBridge (const UIDRef &linkRef) const =0
 
virtual ErrorCode RevealLinkInBridge (const UIDRef &linkRef) const =0
 
virtual bool CanRevealLinkInCloudLibraries (const UIDRef &linkRef) const =0
 
virtual ErrorCode RevealLinkInCloudLibraries (const UIDRef &linkRef) const =0
 
virtual bool CanGotoLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode GotoLink (const UIDRef &linkRef, PMString *errorString) const =0
 
virtual bool CanPackageLink (const UIDRef &linkRef) const =0
 
virtual UID GetLinkResource (const UIDRef &linkRef) const =0
 
virtual UID GetLinkObject (const UIDRef &linkRef) const =0
 
virtual bool LinkHasChildren (const UIDRef &linkRef) const =0
 
virtual LinkStatus GetLinkStatus (const UIDRef &linkRef, bool bUpdateState) const =0
 
virtual bool CanReplaceFPOWithOriginalLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode ReplaceFPOWithOriginalLink (const UIDRef &linkRef, UIFlags uiFlags, bool16 bIgnoreErrors, UIDList &newLinkUIDs) const =0
 
virtual ErrorCode ReplaceAllFPOWithOriginalLinks (const UIDList &links, UIFlags uiFlags, bool16 bIgnoreErrors, UIDList *pNewLinks=nil) const =0
 
virtual bool CanDownloadOriginalLink (const UIDRef &linkRef) const =0
 
virtual ErrorCode DownloadOriginalLink (const UIDRef &linkRef, bool async=true) const =0
 
virtual ErrorCode DownloadAllOriginalLinks (const UIDList &links, bool async=true) const =0
 
virtual bool GetHTTPLinksDefaultRenditionType (ILinkResourceRenditionData::ResourceRenditionType &type) const =0
 
virtual ErrorCode SetHTTPLinksDefaultRenditionType (const ILinkResourceRenditionData::ResourceRenditionType &type) const =0
 

Member Enumeration Documentation

Identifiers that denote the combined status of a link and its linked resource. The identifiers take into account the link's resource and object modification states, as well as the link's linked resource's state and stored state. The identifiers are used to get the combined status of a link and its linked resource. The state may not be the actual current state of the resource.
Enumerator
kLinkUpToDate 

Link is up-to-date and available for use.

kLinkOutOfDate 

Link is out-of-date and needs to be updated.

kLinkResourceEmbedded 

Link resource is embedded, and link is up-to-date.

kLinkResourceCached 

Link resource is cached, and link is up-to-date.

kLinkResourceContained 

Link resource is contained, and link is up-to-date.

kLinkResourceMissing 

Link resource is missing.

kLinkResourceInaccessible 

Link resource is not accessible by the user.

kLinkResourcePending 

Link resource state is pending an update.

kLinkResourceUnknown 

Link resource state cannot be determined.

Member Function Documentation

virtual ErrorCode Facade::ILinkFacade::AttachLink (const UIDRefobjectRef,
UID linkUID 
) const
pure virtual

Attaches an existing link to an object. The previous object linked is forgotten but unaffected.

Parameters
objectRef[IN] UIDRef of the object to attach the link to.
linkUID[IN] UID of the link.
Returns
kSuccess if the link is successfully attached, else an error code.
virtual bool Facade::ILinkFacade::CanCopyLinkToFolder (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be copied to a folder.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be copied to a folder, else false.
virtual bool Facade::ILinkFacade::CanDownloadOriginalLink (const UIDReflinkRef) const
pure virtual

Determines if the original for an FPO resource can be downloaded.

Parameters
linkRef[IN] UIDRef of the link to be downloaded.
Returns
true if the original resource for an FPO resource can be downloaded, else false.
See Also
ILinkResourceRenditionData::ResourceRenditionType
virtual bool Facade::ILinkFacade::CanEditLink (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be edited.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be edited, else false.
virtual bool Facade::ILinkFacade::CanEmbedLink (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be embedded.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be embedded, else false.
virtual bool Facade::ILinkFacade::CanGotoLink (const UIDReflinkRef) const
pure virtual

Determines whether a link's linked object can be displayed.

Parameters
linkRef[IN] UIDRef of the link to check.
Returns
True if the goto operation is supported, else false.
virtual bool Facade::ILinkFacade::CanGoToSource (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be opened in InDesign.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be opened (i.e. it is a sharedContent link), else false.
virtual bool Facade::ILinkFacade::CanPackageLink (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be packaged.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be packaged, else false.
virtual bool Facade::ILinkFacade::CanRelinkLink (const UIDReflinkRef) const
pure virtual

Determines if a link can be relinked.

Parameters
linkRef[IN] UIDRef of the link to check.
Returns
True if the link can be relinked, else false.
virtual bool Facade::ILinkFacade::CanRelinkResource (const UIDRefresourceRef) const
pure virtual

Determines if a resource can be relinked.

Parameters
resourceRef[IN] UIDRef of the link resource to check.
Returns
True if the resource can be relinked, else false.
virtual bool Facade::ILinkFacade::CanReplaceFPOWithOriginalLink (const UIDReflinkRef) const
pure virtual

Determines if a resource which is a placeholder(FPO) can be replaced.

Parameters
linkRef[IN] UIDRef of the link to be replaced.
Returns
true if the resource if placeholder (FPO) can be replaced with the original, else false.
See Also
ILinkResourceRenditionData::ResourceRenditionType
virtual bool Facade::ILinkFacade::CanRevealLink (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be revealed in the system's file browser.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be revealed, else false.
virtual bool Facade::ILinkFacade::CanRevealLinkInBridge (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be revealed in Adobe Bridge.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be revealed in Bridge, else false.
virtual bool Facade::ILinkFacade::CanRevealLinkInCloudLibraries (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be revealed in CC Libraries panel.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be revealed in CC Libraries panel, else false.
virtual bool Facade::ILinkFacade::CanUnembedLink (const UIDReflinkRef) const
pure virtual

Determines if a link's resource can be unembedded.

Parameters
linkRef[IN] UIDRef of the link whose resource to check.
Returns
True if the link's resource can be unembedded, else false.
virtual bool Facade::ILinkFacade::CanUpdateLink (const UIDReflinkRef,
bool bForceUpdate 
) const
pure virtual

Determines if a link can be updated.

Parameters
linkRef[IN] UIDRef of the link to check.
bForceUpdate[IN] Denotes whether the update will be forced. \ True if the update will be forced, else false.
Returns
True if the link can be updated, else false.
virtual ErrorCode Facade::ILinkFacade::CopyLinksToFolder (const UIDListlinks,
const IDFilefolder,
bool bRelink,
UIFlags uiFlags 
) const
pure virtual

Copies links' resources to the specified folder, and optionally relinks the resources to point to the new location.

Parameters
links[IN] List of links whose resources to copy.
folder[IN] Folder to copy the resources to.
bRelink[IN] Denotes whether to relink the resources to the files in the destination folder.
uiFlags[IN] Denotes whether to allow UI during the copy operation.
Returns
kSuccess if the links' resources are copied, else an error code.
virtual ErrorCode Facade::ILinkFacade::CreateLink (IDataBasedb,
ILink::LinkType type,
LinkClientID clientId,
UID objectUID,
UID resourceUID,
bool bSetLinkModified,
UIDlinkUID 
) const
pure virtual

Creates a new link of the given type.

Parameters
type[IN] Type of link to create.
clientId[IN] Link client identifier of the link to create.
objectRef[IN] UIDRef of the link object to link.
resourceRef[IN] UIDRef of the link resource to link. The resource must have the same LinkClientID as the link.
bSetLinkModified[IN] Denotes whether to set the created link as modified or not. If the link is to be updated after creation, pass true; else set to false.
linkUID[OUT] UID of the created link. kInvalidUID if the create fails.
Returns
kSuccess if the link is successfully created, else an error code.
virtual ErrorCode Facade::ILinkFacade::CreateLink (IDataBasedb,
ILink::LinkType type,
LinkClientID clientId,
UID objectUID,
const URIresourceURI,
bool bSetLinkModified,
UIDlinkUID 
) const
pure virtual

Creates a new link of the given type.

Parameters
type[IN] Type of link to create.
clientId[IN] Link client identifier of the link to create.
objectRef[IN] UIDRef of the link object to link.
resourceURI[IN] URI of the link resource to link.
bSetLinkModified[IN] Denotes whether to mark the created link as modified or not. If the link is to be updated after creation, pass true; else set to false.
linkUID[OUT] UID of the created link. kInvalidUID if the create fails.
Returns
kSuccess if the link is successfully created, else an error code.
virtual ErrorCode Facade::ILinkFacade::CreateLink (IDataBasedb,
ClassID classID,
LinkClientID clientId,
UID objectUID,
UID resourceUID,
bool bSetLinkModified,
UIDlinkUID 
) const
pure virtual

Creates a new link of the given class.

Parameters
classID[IN] Class identifier of link to create.
clientId[IN] Link client identifier of the link to create.
objectRef[IN] UIDRef of the link object to link.
resourceRef[IN] UIDRef of the link resource to link. The resource must have the same LinkClientID as the link.
bSetLinkModified[IN] Denotes whether to set the created link as modified or not. If the link is to be updated after creation, pass true; else set to false.
linkUID[OUT] UID of the created link. kInvalidUID if the create fails.
Returns
kSuccess if the link is successfully created, else an error code.
virtual ErrorCode Facade::ILinkFacade::CreateLink (IDataBasedb,
ClassID classID,
LinkClientID clientId,
UID objectUID,
const URIresourceURI,
bool bSetLinkModified,
UIDlinkUID 
) const
pure virtual

Creates a new link of the given class.

Parameters
classID[IN] Class identifier of link to create.
clientId[IN] Link client identifier of the link to create.
objectRef[IN] UIDRef of the link object to link.
resourceURI[IN] URI of the link resource to link.
bSetLinkModified[IN] Denotes whether to mark the created link as modified or not. If the link is to be updated after creation, pass true; else set to false.
linkUID[OUT] UID of the created link. kInvalidUID if the create fails.
Returns
kSuccess if the link is successfully created, else an error code.
virtual ErrorCode Facade::ILinkFacade::CreateResource (IDataBasedb,
const URIuri,
LinkClientID clientId,
const PMStringformatType,
UIDresourceUID 
) const
pure virtual

Creates a new link resource from a URI.

Parameters
db[IN] Database to create the link resource in.
uri[IN] URI of the link resource to create.
clientId[IN] Link client identifier of the resource to create.
formatType[IN] Resource's import/export format type.
resourceUID[OUT] UID of the created link resource. kInvalidUID if the create fails.
Returns
kSuccess if the link resource is successfully created, else an error code.
virtual ErrorCode Facade::ILinkFacade::DeleteLinks (const UIDListlinks,
bool bDeleteResource,
bool bDeleteChildren 
) const
pure virtual

Deletes links.

Parameters
links[IN] List of links to delete.
bDeleteResource[IN] Denotes whether to delete the link resource held by a link if it is not referenced by any other link.
bDeleteChildren[IN] Denotes whether to delete child links of the link being deleted.
Returns
kSuccess if the links are deleted, else an error code.
virtual ErrorCode Facade::ILinkFacade::DeleteLinksByObject (const UIDListobjects,
bool bDeleteResource,
bool bDeleteChildren 
) const
pure virtual

Deletes links that are associated with the given link object UIDs.

Parameters
objects[IN] List of link objects whose associated links to delete.
bDeleteResource[IN] Denotes whether to delete the link resource held by a link if it is not referenced by any other link.
bDeleteChildren[IN] Denotes whether to delete child links of the link being deleted.
Returns
kSuccess if the links are deleted, else an error code.
virtual ErrorCode Facade::ILinkFacade::DeleteResources (const UIDListresources) const
pure virtual

Deletes link resources. \ A resource that is currently referenced by a link cannot be deleted. \ The resource's child resources (and associated child links) are also deleted as long as no other resources or links reference them.

Parameters
resources[IN] List of link resources to delete.
Returns
kSuccess if the link resources are deleted, else an error code.
virtual ErrorCode Facade::ILinkFacade::DownloadAllOriginalLinks (const UIDListlinks,
bool async = true 
) const
pure virtual

Downloads the original links for all the placeholder links.

Parameters
links[IN] List of links to download.
async[IN] Whether the download is synchronous or asynchronous.
Returns
kSuccess if the originals are downloaded for sync operations or can be downloaded for async operations for all placeholder resources, else an error code.
virtual ErrorCode Facade::ILinkFacade::DownloadOriginalLink (const UIDReflinkRef,
bool async = true 
) const
pure virtual

Downloads the original asset for the given placeholder link resource.

Parameters
linkRef[IN] UIDRef of the link whose original asset is downloaded.
async[IN] Whether the download is synchronous or asynchronous.
Returns
kSuccess if the original is downloaded for sync operation or can be downloaded for async operation, else an error code.
virtual ErrorCode Facade::ILinkFacade::EditLink (const UIDReflinkRef,
const AppInfoappInfo,
PMStringerrorString 
) const
pure virtual

Edits a link's resource.

Parameters
linkRef[IN] UIDRef of the link whose resource to edit.
appInfo[IN] Indicates which app to edit the resource with. kNullAppInfo to use the default editor.
errorString[OUT] If editing fails, this fills out an error message when the string pointer is non-nil
Returns
kSuccess if the link's resource was edited, else an error code.
virtual ErrorCode Facade::ILinkFacade::EmbedLinks (const UIDListlinks) const
pure virtual

Embeds link resources.\ Note: Embedding a link will never result in a new UID for the link.

Parameters
links[IN] List of links whose resources to embed.
Returns
kSuccess if the link resources are embedded, else an error code.
virtual ErrorCode Facade::ILinkFacade::FindMissingResources (IDataBasedb,
LinkClientID clientId,
const URIrelativeURI,
bool bIgnoreStamp,
bool bUpdateLinks,
UIFlags uiFlags,
uint32 & nFixed 
) const
pure virtual

Attempts to automatically find (without user interaction) the location of missing link resources, and optionally update out-of-date links that reference the found resources.

Parameters
db[IN] Database whose missing link resources to find.
clientId[IN] Link client identifier of the missing resources to find.
relativeURI[IN] Relative location of where to start the search. \ For example, this is often the location of the document, and depending upon the protocal of the link may not be utilized.
bIgnoreStamp[IN] Denotes whether to ignore the missing resources' stamps when looking for potential matches. If true, matches are based on the name of the resource only, else matches are based on the resources name and stamp.
bUpdate[IN] Denotes whether to update out-of-date links that reference the missing resources that were found.
uiFlags[IN] Denotes whether to allow UI during the operation.
nFixed[OUT] Number of missing resources found.
Returns
kSuccess if one or more link resources are successfully found, else an error code.
virtual bool Facade::ILinkFacade::GetHTTPLinksDefaultRenditionType (ILinkResourceRenditionData::ResourceRenditionType & type) const
pure virtual

Gets the Default rendition type for HTTP Links

Parameters
type[OUT] current default rendition type for HTTP links
Returns
true if the fetching is successful, otherwise false
virtual UID Facade::ILinkFacade::GetLinkObject (const UIDReflinkRef) const
pure virtual

Returns a link's linked object.

Parameters
linkRef[IN] UIDRef of the link.
Returns
Link's linked object.
virtual UID Facade::ILinkFacade::GetLinkResource (const UIDReflinkRef) const
pure virtual

Returns a link's linked resource.

Parameters
linkRef[IN] UIDRef of the link.
Returns
Link's linked resource.
virtual LinkStatus Facade::ILinkFacade::GetLinkStatus (const UIDReflinkRef,
bool bUpdateState 
) const
pure virtual

Returns the combined status of a link and its linked resource.

Parameters
linkRef[IN] UIDRef of the link.
bUpdateState[IN] Denotes whether to update the resource and link states first, so the returned status is a current status rather than the cached status.
Returns
Combined status of the link and its linked resource.
virtual PMString Facade::ILinkFacade::GetResourceFormatType (const UIDRefresourceRef) const
pure virtual

Returns a link resource's import/export format type.

Parameters
resourceRef[IN] UIDRef of the link resource.
Returns
Link resource's import/export format type.
virtual uint32 Facade::ILinkFacade::GetResourceLinks (const UIDRefresourceRef,
bool bChildLinksOK,
UIDListlinks 
) const
pure virtual

Returns the links linked to a link resource.

Parameters
resourceRef[IN] UIDRef of the link resource.
bChildLinksOK[IN] Denotes whether to include child links in the result.
links[OUT] List of links linked to the resource.
Returns
Number of links linked to the resource.
virtual WideString Facade::ILinkFacade::GetResourceLongName (const UIDRefresourceRef) const
pure virtual

Returns a link resource's long name.\ For a file link, the long name is the resource's file path.

Parameters
resourceRef[IN] UIDRef of the link resource.
Returns
Link resource's long name.
virtual uint64 Facade::ILinkFacade::GetResourceSize (const UIDRefresourceRef) const
pure virtual

Returns a link resource's data size in bytes.

Parameters
resourceRef[IN] UIDRef of the link resource.
Returns
Link resource's data size in bytes.
virtual ErrorCode Facade::ILinkFacade::GotoLink (const UIDReflinkRef,
PMStringerrorString 
) const
pure virtual

Displays a link's linked object.

Parameters
linkRef[IN] UIDRef of the link whose linked object to go to.
errorString[OUT] If the goto fails, this fills out an error message when the string pointer is non-nil
Returns
kSuccess if the goto operation succeeds, else an error code.
virtual ErrorCode Facade::ILinkFacade::GoToSource (const UIDReflinkRef,
PMStringerrorString 
) const
pure virtual

Opens a link's resource in InDesign.

Parameters
linkRef[IN] UIDRef of the link whose resource to open.
errorString[OUT] If opening fails, this fills out an error message when the string pointer is non-nil
Returns
kSuccess if the link's resource was opened, else an error code.
virtual bool Facade::ILinkFacade::LinkHasChildren (const UIDReflinkRef) const
pure virtual

Returns whether a link has child links.

Parameters
linkRef[IN] UIDRef of the link.
Returns
True if the link has child links, else false.
virtual ErrorCode Facade::ILinkFacade::ReinitResource (const UIDRefresourceRef,
const URIuri 
) const
pure virtual

Reinitializes a link resource with a the given URI while preserving the link resource's current UID. The state of the link resource is the same as if it were newly created.

Parameters
resourceRef[IN] UIDRef of the link resource to reintialize.
uri[IN] URI of the link resource.
Returns
kSuccess if the link resource is successfully reintialized with the given URI, else an error code.
virtual ErrorCode Facade::ILinkFacade::RelinkLink (const UIDReflinkRef,
const URIuri,
UIFlags uiFlags,
UIDnewLinkUID 
) const
pure virtual

Relinks a link to the item specified by the given URI.

Parameters
linkRef[IN] UIDRef of the link to relink.
uri[IN] URI of the item to relink to.
uiFlags[IN] Denotes whether to allow UI during the relink operation.
newLinkUID[OUT] UID of the link as a result of the relink, which may or may not be the same as the UID of the link before the relink operation.
Returns
kSuccess if the link is relinked, else an error code.
virtual ErrorCode Facade::ILinkFacade::RelinkLinksExtension (const UIDListlinks,
const WideStringextension,
UIFlags uiFlags,
UIDListskippedLinks 
) const
pure virtual

Relinks links' resources to a file with a matching base name and the specified extension in the same folder as the original file.

Parameters
links[IN] List of links whose resources to relink.
extension[IN] New extension of the files to be relinked.
uiFlags[IN] Denotes whether to allow UI during the relink operation.
skippedLinks[IN] List of the link UIDs that could not be relinked because no matching file with the given extension existed.
Returns
kSuccess if one or more of the links are relinked, else an error code.
virtual ErrorCode Facade::ILinkFacade::RelinkLinksToFolder (const UIDListlinks,
const IDFilefolder,
const WideStringextension,
UIFlags uiFlags,
UIDListskippedLinks 
) const
pure virtual

Relinks links' resources to a file with a matching name in the specified folder.

Parameters
links[IN] List of links whose resources to relink.
folder[IN] Folder to relink the resources to.
extension[IN] If not blank, the resources are relinked to a matching file with the given extension.
uiFlags[IN] Denotes whether to allow UI during the relink operation.
skippedLinks[IN] List of the link UIDs that could not be relinked because no matching file existed.
Returns
kSuccess if one or more of the links are relinked, else an error code.
virtual ErrorCode Facade::ILinkFacade::RelinkResource (const UIDRefresourceRef,
const URIuri,
UIFlags uiFlags 
) const
pure virtual

Relinks a link resource to the item specified by the given URI, and updates all the links that reference the resource.

Parameters
resourceRef[IN] UIDRef of the link resource to relink.
uri[IN] URI of the item to relink to.
uiFlags[IN] Denotes whether to allow UI during the relink operation.
Returns
kSuccess if the link resource is relinked, else an error code.
virtual ErrorCode Facade::ILinkFacade::ReplaceAllFPOWithOriginalLinks (const UIDListlinks,
UIFlags uiFlags,
bool16 bIgnoreErrors,
UIDListpNewLinks = nil 
) const
pure virtual

Replaces the placeholder links with the original links.

Parameters
links[IN] List of links to replace.
uiFlags[IN] Denotes whether to allow UI during the replace operation.
bIgnoreErrors[IN] Denotes whether to ignore intermediate errors for some of the links.
pNewLinks[OUT] List of the resulting links of the replace with original operation. The nth link in the newLinks UIDList corresponds the nth link in the given links UIDList, and may or may not be the same as the input UID. kInvalidUID is returned for links that have been deleted as a result of the replace.
Returns
kSuccess if the placeholder links are replaced with original links.
See Also
ILinkResourceRenditionData::ResourceRenditionType
virtual ErrorCode Facade::ILinkFacade::ReplaceFPOWithOriginalLink (const UIDReflinkRef,
UIFlags uiFlags,
bool16 bIgnoreErrors,
UIDListnewLinkUIDs 
) const
pure virtual

Replaces a link resource which is a placeholder (FPO) with the original.

Parameters
linkRef[IN] UIDRef of the link.
uiFlags[IN] Denotes whether to allow UI during the replace operation.
bIgnoreErrors[IN] Denotes whether to ignore intermediate errors for some of the links.
newLinkUIDs[OUT] UIDList of the links as a result of the replace to original. Link UIDs may change as a result of this operation.
Returns
kSuccess if the FPO link resource is replaced with original, else an error code.
See Also
ILinkResourceRenditionData::ResourceRenditionType
virtual ErrorCode Facade::ILinkFacade::ResolveResources (const UIDListresources,
const URIrelativeURI,
bool bIgnoreStamp 
) const
pure virtual

Attempts to automatically (find without user interaction) the location of a link resource.

Parameters
resources[IN] List of link resources to update.
relativeURI[IN] Relative location of where to start the search. \ For example, this is often the location of the document, and depending upon the protocal of the link may not be utilized.
bIgnoreStamp[IN] Denotes whether to ignore the resource's stamp when looking for potential matches.
Returns
kSuccess if the link resources are successfully resolved, else an error code.
virtual ErrorCode Facade::ILinkFacade::RevealLink (const UIDReflinkRef) const
pure virtual

Reveals a link's resource in the system's file browser.

Parameters
linkRef[IN] UIDRef of the link whose resource to reveal.
Returns
kSuccess if the link's resource was revealed, else an error code.
virtual ErrorCode Facade::ILinkFacade::RevealLinkInBridge (const UIDReflinkRef) const
pure virtual

Reveal a link's resource in Adobe Bridge.

Parameters
linkRef[IN] UIDRef of the link whose resource to reveal in Adobe Bridge.
Returns
kSuccess if the link's resource was revealed in Bridge, else an error code.
virtual ErrorCode Facade::ILinkFacade::RevealLinkInCloudLibraries (const UIDReflinkRef) const
pure virtual

Reveale a link's resource in CC Libraries.

Parameters
linkRef[IN] UIDRef of the link whose resource to reveal in CC Libraries.
Returns
kSuccess if the link's resource was revealed in CC Libraries, else an error code.
virtual ErrorCode Facade::ILinkFacade::SetHTTPLinksDefaultRenditionType (const ILinkResourceRenditionData::ResourceRenditionType & type) const
pure virtual

Sets the Default rendition type for HTTP Links

Parameters
type[IN] the new default rendition type value
Returns
kSuccess if the rendition type is successfully changed, else an error code.
virtual ErrorCode Facade::ILinkFacade::SetLinkResourceModStates (const UIDListlinks,
ILink::ResourceModificationState modState 
) const
pure virtual

Set links' resource modification states to to the given state.

Parameters
links[IN] List of links to set.
modState[IN] Resource modification state to set the links to.
Returns
kSuccess if the links' states are set, else an error code.
virtual ErrorCode Facade::ILinkFacade::UnembedLinks (const UIDListlinks,
UIFlags uiFlags 
) const
pure virtual

Unembeds link resources to the location they were embedded from.\ Note: Unembedding a link will never result in a new UID for the link.

Parameters
links[IN] List of links whose resources to unembed.
uiFlags[IN] Denotes whether to allow UI during the unembed operation.
Returns
kSuccess if the link resources are unembedded, else an error code.
virtual ErrorCode Facade::ILinkFacade::UnembedLinks (const UIDListlinks,
const URIuri,
UIFlags uiFlags 
) const
pure virtual

Unembeds link resources to the location specified by the given URI.\ Note: Unembedding a link will never result in a new UID for the link.

Parameters
links[IN] List of links whose resources to unembed.
uri[IN] URI of the location where to unembed the link resources. \ For example, if the URI is a file URI, it specifies the target folder of the unembedded link resource files.
uiFlags[IN] Denotes whether to allow UI during the unembed operation.
Returns
kSuccess if the link resources are unembedded, else an error code.
virtual ErrorCode Facade::ILinkFacade::UpdateLink (const UIDReflinkRef,
bool bForceUpdate,
UIFlags uiFlags,
UIDnewLinkUID 
) const
pure virtual

Update a link.

Parameters
linkRef[IN] UIDRef of the link to update.
bForceUpdate[IN] Denotes whether to force an update, or to only update if needed. \ True to force an update, false to only update if needed.
uiFlags[IN] Denotes whether to allow UI during the update operation.
newLinkUID[OUT] UID of the link as a result of the update, which may or may not be the same as the UID of the link before the update operation.
Returns
kSuccess if the link is updated, else an error code.
virtual ErrorCode Facade::ILinkFacade::UpdateLinks (const UIDListlinks,
bool bForceUpdate,
UIFlags uiFlags,
bool bScheduleCmd,
UIDListpNewLinks = nil 
) const
pure virtual

Updates links.

Parameters
links[IN] List of links to update.
bForceUpdate[IN] Denotes whether to force an update, or to only update if needed. \ True to force an update, false to only update if needed.
uiFlags[IN] Denotes whether to allow UI during the update operation.
bScheduleCmd[IN] Denotes whether to schedule or process the update links request. \ True to schedule the update for later, false to process the update now.
pNewLinks[OUT] List of the resulting links of the update operation. To ignore the optional parameter pass nil, the default. This parameter is also ignored if the update links request is scheduled.\ The nth link in the newLinks UIDList corresponds the nth link in the given links UIDList, and may or may not be the same as the given UID. kInvalidUID is returned for links that have been deleted as a result of the update.
Returns
kSuccess if the links are updated or scheduled for update, else an error code.
virtual ErrorCode Facade::ILinkFacade::UpdateLinksRecursively (const UIDListlinks,
bool bForceUpdate,
UIFlags uiFlags,
bool bScheduleCmd 
) const
pure virtual

Updates links Recursively.

Parameters
links[IN] List of links to update.
bForceUpdate[IN] Denotes whether to force an update, or to only update if needed. \ True to force an update, false to only update if needed.
uiFlags[IN] Denotes whether to allow UI during the update operation.
bScheduleCmd[IN] Denotes whether to schedule or process the update links request. \ True to schedule the update for later, false to process the update now.
Returns
kSuccess if the links are updated, else an error code.
virtual ErrorCode Facade::ILinkFacade::UpdateLinkStates (const UIDListlinks) const
pure virtual

Updates links' resource modification states to modified if the resource has been modified.

Parameters
links[IN] List of links to update.
Returns
kSuccess if the links' states are updated, else an error code.
virtual ErrorCode Facade::ILinkFacade::UpdateResourceStates (const UIDListresources,
ILinkManager::OperationType opType 
) const
pure virtual

Updates the state of link resources.

Parameters
resources[IN] List of link resources to update.
opType[IN] Denotes whether to perform the state update operations asynchronously or synchronously.
Returns
kSuccess if the link resources' states are successfully updated, else an error code. \ When performing the operation asynchronously, the returned error code denotes whether the state update requests were successfully queued.