Public Member Functions

IATSProvider Class Reference

This reference page is linked to from the following overview topics: Library File Descriptions, Vault and Asset Tracking.


Search for all occurrences

Detailed Description

ATS Provider Interface.

This is the main interface for interacting with an ATS Provider. It provides for basic version control functionality, retrieval of status, connections, dependency reporting, etc.

See also:
IATSMax, ATSFileList, ATSClientInfo, ATSUserList

#include <IATSProvider.h>

Inheritance diagram for IATSProvider:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual  ~IATSProvider ()
  Destructor.
virtual const MCHAR *  GetProviderName ()=0
  Get provider name.
virtual ATSOption  GetSupportOptions ()=0
  Get provider's support options.
virtual bool  IsInitialized ()=0
  Get initialization status.
virtual bool  IsProjectOpen ()=0
  Get project status.
virtual ATSResult  Initialize (ATSClientInfo &atsClientInfo, ATSOption atsOptions=ATS::kATSOptNone)=0
  Initialize.
virtual ATSResult  Uninitialize (ATSOption atsOptions=ATS::kATSOptNone)=0
  Uninitialize.
virtual ATSResult  OpenProject (MCHAR *szPath, const MCHAR *szComment, ATSOption atsOptions=ATS::kATSOptNone)=0
  Open project.
virtual ATSResult  CloseProject (ATSOption atsOptions=ATS::kATSOptNone)=0
  Close project.
virtual const MCHAR *  GetWorkingFolder ()=0
  Get working folder.
virtual ATSResult  SetWorkingFolder (const MCHAR *szWorkingFolder)=0
  Set working folder.
virtual ATSResult  Checkin (ATSFileList &atsFileList, const MCHAR *szComment, ATSOption atsOptions=ATS::kATSOptNone)=0
  Checkin files.
virtual ATSResult  Checkout (ATSFileList &atsFileList, const MCHAR *szComment, ATSOption atsOptions=ATS::kATSOptNone)=0
  Checkout files.
virtual ATSResult  UndoCheckout (ATSFileList &atsFileList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Undo checkout.
virtual ATSResult  GetLatest (ATSFileList &atsFileList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Get latest.
virtual ATSResult  GetVersionRange (ATSFileList &atsFileList, ATSVersion &verMin, ATSVersion &verMax, ATSOption atsOptions=ATS::kATSOptNone)=0
  Get version range.
virtual ATSResult  GetVersion (ATSFileList &atsFileList, ATSVersion ver, ATSOption atsOptions=ATS::kATSOptNone)=0
  Get version.
virtual ATSResult  AddFiles (ATSFileList &atsFileList, const MCHAR *szComment, ATSOption atsOptions=ATS::kATSOptNone)=0
  Add files.
virtual ATSResult  History (ATSFileList &atsFileList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Show version history.
virtual ATSResult  Properties (ATSFileList &atsFileList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Show file properties.
virtual ATSResult  GetFileStatus (ATSFileList &atsFileList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Get file status.
virtual ATSResult  GetLockedFileUserList (ATSFileList &atsFileList, ATSUserList &atsUserList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Get name of users that have files locked.
virtual ATSResult  ExploreProvider (ATSFileList &atsFileList, ATSExploreProviderParams &exploreParams, ATSOption atsOptions=ATS::kATSOptNone)=0
  Explore provider.
virtual ATSResult  ShowProviderOptions (ATSOption atsOptions=ATS::kATSOptNone)=0
  Show provider options.
virtual ATSResult  LaunchProvider (ATSOption atsOptions=ATS::kATSOptNone)=0
  Launch provider.
virtual ATSResult  GetAssociatedFiles (ATSFileList &atsFileList, ATSOption atsOptions=ATS::kATSOptNone)=0
  Get associated files.
virtual bool  IsATSMSSCCWrapper ()=0
  Is provider using MSSCC interface.

Constructor & Destructor Documentation

virtual ~IATSProvider ( ) [inline, virtual]

Destructor.

{}

Member Function Documentation

virtual const MCHAR* GetProviderName ( ) [pure virtual]

Get provider name.

Returns:
string containing provider name
virtual ATSOption GetSupportOptions ( ) [pure virtual]

Get provider's support options.

This allows the provider to specify whether or not they support some of the more advanced version control method, such as dependency reporting and exploring. See kATSSupport* flags.

Returns:
Support option flags (ATSOption)
virtual bool IsInitialized ( ) [pure virtual]

Get initialization status.

Returns:
true if the provider has been initialized, false if it has not.
virtual bool IsProjectOpen ( ) [pure virtual]

Get project status.

Returns:
true if the provider has a project open, false if it has not.
virtual ATSResult Initialize ( ATSClientInfo atsClientInfo,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Initialize.

This is called when the user has decided to connect or logon to the provider. At this point, the provider should be prepared to open a project, launch provider, explorer provider, or show options. The provider might also ask the user to login if neccessary, although that can be delayed until a project is opened.

Parameters:
[in] atsClientInfo reference to ATSClientInfo object. Any data of interested should be copied locally to the provider.
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult Uninitialize ( ATSOption  atsOptions = ATS::kATSOptNone ) [pure virtual]

Uninitialize.

This is called when the user has decided to disconnect or logout of the provider.

Parameters:
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult OpenProject ( MCHAR *  szPath,
const MCHAR *  szComment,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Open project.

This is called when the client has opened a project. At this point a project path has been determined from document or document related project files. For certain providers, the specified path might be used to determine if the project can be resolved to a workspace by the provider.

Parameters:
[in,out] szPath string containing the path to the project. This typically is the path in which the document was opened.
[in] szComment string containing any initial or default comment for the project.
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult CloseProject ( ATSOption  atsOptions = ATS::kATSOptNone ) [pure virtual]

Close project.

This is called when the client has closed a project. This occurs when the user has opened a new document or is closing down the client application.

Parameters:
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual const MCHAR* GetWorkingFolder ( ) [pure virtual]

Get working folder.

Returns:
string containing current working folder used to resolve project files
virtual ATSResult SetWorkingFolder ( const MCHAR *  szWorkingFolder ) [pure virtual]

Set working folder.

The working folder for most providers is used to map the root folder in the version provider's file system to the local file system.

Parameters:
[in] szWorkingFolder string containing the new working folder.
Returns:
ATSResult value
virtual ATSResult Checkin ( ATSFileList atsFileList,
const MCHAR *  szComment,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Checkin files.

Active files in the ATSFileList object should be checked in to the provider.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] szComment string containing the comment to include with this version.
[in] atsOptions default value kATSOptNone. kATSOptSilent and kATSOptKeepCheckedOut are valid.
Returns:
ATSResult value
virtual ATSResult Checkout ( ATSFileList atsFileList,
const MCHAR *  szComment,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Checkout files.

Active files in the ATSFileList object should be checked out from the provider.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] szComment string containing the comment to include with this version.
[in] atsOptions default value kATSOptNone. kATSOptSilent and kATSOptReplaceLocalCopy are valid.
Returns:
ATSResult value
virtual ATSResult UndoCheckout ( ATSFileList atsFileList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Undo checkout.

Active files in the ATSFileList object should no longer be checked out by the provider.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] atsOptions default value kATSOptNone. kATSOptSilent and kATSOptReplaceLocalCopy are valid.
Returns:
ATSResult value
virtual ATSResult GetLatest ( ATSFileList atsFileList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Get latest.

Active files in the ATSFileList object should have their latest version downloaded.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult GetVersionRange ( ATSFileList atsFileList,
ATSVersion &  verMin,
ATSVersion &  verMax,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Get version range.

Get the range of version numbers. If multiple active file entries are in atsFileList, the verMin is the minimum of all the files, and verMax is the maximum of all the files.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[out] verMin minimum version number
[out] verMax maximum version number
[in] atsOptions default value kATSOptNone.
Returns:
ATSResult value
virtual ATSResult GetVersion ( ATSFileList atsFileList,
ATSVersion  ver,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Get version.

Downloads the specified version for the active files in the ATSFileList object.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] ver version number
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult AddFiles ( ATSFileList atsFileList,
const MCHAR *  szComment,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Add files.

Active files in the ATSFileList object should be added to the provider.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] szComment string containing the comment to include with this version.
[in] atsOptions default value kATSOptNone. kATSOptSilent and kATSOptKeepCheckedOut are valid.
Returns:
ATSResult value
virtual ATSResult History ( ATSFileList atsFileList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Show version history.

The version history of the active files in the ATSFileList object should be shown. If multiple histories can not be displayed, the first active file should be displayed.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value. If the history dialog resulted in a version change of one of the file, kATSResSuccessReload should be returned.
virtual ATSResult Properties ( ATSFileList atsFileList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Show file properties.

The properties of the active files in the ATSFileList object should be shown. If multiple file properties can not be displayed, the first active file should be displayed.

Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult GetFileStatus ( ATSFileList atsFileList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Get file status.

The status of the active files in the ATSFileList object should be updated. The status should be placed in the Out flags of the ATSFileEntry.

See also:
ATSFileEntry
Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[in] atsOptions default value kATSOptNone. kATSOptSilent is valid.
Returns:
ATSResult value
virtual ATSResult GetLockedFileUserList ( ATSFileList atsFileList,
ATSUserList atsUserList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Get name of users that have files locked.

For each active file in the ATSFileList object, a corresponding atsUserList entry will be created. The provider will fill in an ATSUserEntry object with information about the user that has the active file locked or checked out. If a file in the active list is not locked, the provider will create a blank ATSUserEntry object in place.

See also:
ATSUserEntry
Parameters:
[in,out] atsFileList reference to ATSFileList object. The active file list should be used.
[out] atsUserList reference to ATSUserList object. This will be populated by the provider.
[in] atsOptions default value kATSOptNone.
Returns:
ATSResult value
virtual ATSResult ExploreProvider ( ATSFileList atsFileList,
ATSExploreProviderParams exploreParams,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Explore provider.

If supported, the provider should display a dialog to allow the user to explorer the contents of the provider. The file or files selected by the user will be returned and optionally downloaded.

See also:
ATSExploreProviderParams
Parameters:
[in,out] atsFileList reference to ATSFileList object. Active entries should be created for the selected files.
[in] exploreParams reference to ATSExploreProviderParams object that defines the parameters for the explorer provider dialog.
[in] atsOptions default value kATSOptNone.
Returns:
ATSResult value
virtual ATSResult ShowProviderOptions ( ATSOption  atsOptions = ATS::kATSOptNone ) [pure virtual]

Show provider options.

The provider should optional display a dialog containing any options.

Parameters:
[in] atsOptions default value kATSOptNone.
Returns:
ATSResult value. If any change in options might affect the status of the files, kATSResSuccessReload should be returned.
virtual ATSResult LaunchProvider ( ATSOption  atsOptions = ATS::kATSOptNone ) [pure virtual]

Launch provider.

The provider should optional launch an associated client application.

Parameters:
[in] atsOptions default value kATSOptNone.
Returns:
ATSResult value. If any change in options might affect the status of the files, kATSResSuccessReload should be returned.
virtual ATSResult GetAssociatedFiles ( ATSFileList atsFileList,
ATSOption  atsOptions = ATS::kATSOptNone 
) [pure virtual]

Get associated files.

This method provides for specifying file associations. If supported, the provider should add the specified associated files for each file in the list as child for that ATSFileEntry. It should clear any children already in the list before adding its own.

Parameters:
[in,out] atsFileList reference to ATSFileList object. If supported, the provider should add the specified associated files for each file in the list as child for that ATSFileEntry. It should clear any children already in the list before adding its own.
[in] atsOptions default value kATSOptNone. kATSOptSilent, kATSOptAssocChildren, kATSOptAssocParents, kATSOptAssocRecurse and are valid.
Returns:
ATSResult value.
virtual bool IsATSMSSCCWrapper ( ) [pure virtual]

Is provider using MSSCC interface.

This specifies whether an ATS Provider is directly supporting the IATSProvider interface or if the ATS core is supplying IATSProvider support through an MSSCC interface.

Returns:
true if MSSCC dll, false if not.

IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider
IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider IATSProvider