This wiki is obsolete, see the NorduGrid web pages for up to date information.
API changes
The following page documents changes in the API of the ARC libraries from one version to another. For documentation on the API see the doxygen documentation.
If no namespace is specified, the ARC namespace should be assumed.
Version 4.0.0 → 4.1.0
libarccommon
* class URL:
Changed: URL(const std::string&, bool = false)
URL(const std::string&, bool = false, int = -1, const std::string& = "")
* class OptionParser:
Added: const std::string& GetCommandWithArguments() const
* class RegularExpression:
Changed: RegularExpression(std::string)
RegularExpression(std::string, bool = false)
Added: bool match(const std::string&, std::vector<std::string>&) const
* Functions:
Added: LogLevel istring_to_level(const std::string&)
Added: std::string join(const std::list<std::string>&, const std::string&)
libarccommunication
* struct HTTPClientInfo: Added: std::multimap<std::string, std::string> headers
libarccompute
* class Job: Added: std::list<std::string> DelegationID
libarccredential
No changes
libarcdata
No changes
libarcdatastaging
No changes
libarcdelegation
* class DelegationProviderSOAP:
Added: void ID(const std::string&)
Changed: (protected) typedef std::map<std::string,Consumer > ConsumerMap
(protected) typedef std::map<std::string,Consumer*> ConsumerMap
libarcglobusutils
No changes
libarcinfosys
No changes
libarcloader
No changes
libarcmessage
No changes
Version 3.0.3 → 4.0.0
libarccommon
* class BaseConfig: Added void AddCredential(const std::string& cred) * class LogDestination: Added void setPrefix(const std::string& prefix) * Enum LogFormat: Added MediumFormat * class UserConfig: Added bool JobListType(const std::string& type) Added const std::string& JobListType() const Added void CredentialString(const std::string& cred) Added const std::string& CredentialString() const Added static const std::string JOBLISTFILE Removed bool Bartender(const std::vector<URL>& urls) Removed void AddBartender(const URL& url) Removed const std::vector<URL>& Bartender() const
libarccommunication
No changes
libarccompute
* class JobInformationStorage: Added bool IsValid() const Added bool bool IsStorageExisting() const Added static JobInformationStorageDescriptor AVAILABLE_TYPES[] * class JobInformationStorageXML: Moved from JobInformationStorage.h to JobInformationStorageXML.h * class JobInformationStorageBDB: Moved from JobInformationStorage.h to JobInformationStorageBDB.h * class JobState: Added JobState(const std::string& jobstate) * Typedefs Added typedef struct JobInformationStorageDescriptor
libarccredential
* New class PasswordSource:
enum Result{ NO_PASSWORD, PASSWORD, CANCEL }
virtual Result Get(std::string& password, int minsize, int maxsize) = 0
* New class PasswordSourceNone:
virtual Result Get(std::string& password, int minsize, int maxsize)
* New class PasswordSourceString:
PasswordSourceString(const std::string& password)
virtual Result Get(std::string& password, int minsize, int maxsize)
* New class PasswordSourceStream:
PasswordSourceStream(std::istream* password)
virtual Result Get(std::string& password, int minsize, int maxsize)
* New class PasswordSourceInteractive:
PasswordSourceInteractive(const std::string& prompt, bool verify)
virtual Result Get(std::string& password, int minsize, int maxsize)
* New enum Signalalgorithm { SIGN_DEFAULT = 0, SIGN_SHA1, SIGN_SHA224, SIGN_SHA256, SIGN_SHA384, SIGN_SHA512 }
* class Credential:
Added Credential(const std::string& CAfile, const std::string& CAkey,
const std::string& CAserial,
const std::string& extfile, const std::string& extsect,
PasswordSource& passphrase4key);
Added Credential(const std::string& cert, const std::string& key, const std::string& cadir,
const std::string& cafile, PasswordSource& passphrase4key,
const bool is_file = true);
Added Credential(const UserConfig& usercfg, PasswordSource& passphrase4key)
Added void SetSigningAlgorithm(Signalgorithm signing_algorithm = SIGN_DEFAULT)
Added void SetKeybits(int keybits = 0)
Added Signalgorithm GetSigningAlgorithm(void) const
Added int GetKeybits(void) const
Added bool OutputPrivatekey(std::string &content, bool encryption, PasswordSource& passphrase)
libarcdata
* class DataPoint: Added virtual bool RequiresCredentialsInFile() const Added virtual void ClearTransferLocations()
libarcdatastaging
No changes
libarcdelegation
No changes
libarcglobusutils
* class GSSCredential: Added GSSCredential(const UserConfig& usercfg)
libarcinfosys
No changes
libarcloader
No changes
libarcmessage
No changes
Version 2.0.1 → 3.0.0
Note that in version 3.0.0 libarcdata2 was renamed to libarcdata. Furthermore the libarcclient library was split in two libraries libarccommunication and libarccompute. For further details see below.
libarccommon
* class ArcLocation:
Added: static std::string GetDataDir()
Added: static std::string GetToolsDir()
* class CountedPointer:
Changed: CountedPointer(T *p)
CountedPointer(T *p = NULL)
* class FileAccess:
Renamed: bool setuid(int uid,int gid)
bool fa_setuid(int uid,int gid)
Renamed: bool mkdir(const std::string& path, mode_t mode)
bool fa_mkdir(const std::string& path, mode_t mode)
Renamed: bool mkdirp(const std::string& path, mode_t mode)
bool fa_mkdirp(const std::string& path, mode_t mode)
Renamed: bool link(const std::string& oldpath, const std::string& newpath)
bool fa_link(const std::string& oldpath, const std::string& newpath)
Renamed: bool softlink(const std::string& oldpath, const std::string& newpath)
bool fa_softlink(const std::string& oldpath, const std::string& newpath)
Renamed: bool copy(const std::string& oldpath, const std::string& newpath, mode_t mode)
bool fa_copy(const std::string& oldpath, const std::string& newpath, mode_t mode)
Renamed: bool chmod(const std::string& path,mode_t mode)
bool fa_chmod(const std::string& path,mode_t mode)
Renamed: bool stat(const std::string& path, struct stat& st)
bool fa_stat(const std::string& path, struct stat& st)
Renamed: bool lstat(const std::string& path, struct stat& st)
bool fa_lstat(const std::string& path, struct stat& st)
Renamed: bool fstat(struct stat& st)
bool fa_fstat(struct stat& st)
Renamed: bool ftruncate(off_t length)
bool fa_ftruncate(off_t length)
Renamed: off_t fallocate(off_t length)
off_t fa_fallocate(off_t length)
Renamed: bool readlink(const std::string& path, std::string& linkpath)
bool fa_readlink(const std::string& path, std::string& linkpath)
Renamed: bool remove(const std::string& path)
bool fa_remove(const std::string& path)
Renamed: bool unlink(const std::string& path)
bool fa_unlink(const std::string& path)
Renamed: bool rmdir(const std::string& path)
bool fa_rmdir(const std::string& path)
Renamed: bool rmdirr(const std::string& path)
bool fa_rmdirr(const std::string& path)
Renamed: bool opendir(const std::string& path)
bool fa_opendir(const std::string& path)
Renamed: bool closedir(void)
bool fa_closedir(void)
Renamed: bool readdir(std::string& name)
bool fa_readdir(std::string& name)
Renamed: bool open(const std::string& path, int flags, mode_t mode)
bool fa_open(const std::string& path, int flags, mode_t mode)
Renamed: bool close(void)
bool fa_close(void)
Renamed: bool mkstemp(std::string& path, mode_t mode)
bool fa_mkstemp(std::string& path, mode_t mode)
Renamed: off_t lseek(off_t offset, int whence)
off_t fa_lseek(off_t offset, int whence)
Renamed: ssize_t read(void* buf,size_t size)
ssize_t fa_read(void* buf,size_t size)
Renamed: ssize_t write(const void* buf,size_t size)
ssize_t fa_write(const void* buf,size_t size)
Renamed: ssize_t pread(void* buf,size_t size,off_t offset)
ssize_t fa_pread(void* buf,size_t size,off_t offset)
Renamed: ssize_t pwrite(const void* buf,size_t size,off_t offset)
ssize_t fa_pwrite(const void* buf,size_t size,off_t offset)
Added: static FileAccess* Acquire(void)
Added: static void Release(FileAccess* fa)
Added: bool fa_rename(const std::string& oldpath, const std::string& newpath)
* New class FileAccessContainer:
FileAccessContainer(unsigned int minval, unsigned int maxval)
FileAccessContainer(void)
~FileAccessContainer(void)
FileAccess* Acquire(void)
void Release(FileAccess* fa)
void SetMin(unsigned int val)
void SetMax(unsigned int val)
* New class InterruptGuard:
InterruptGuard()
~InterruptGuard()
* class LogDestination:
Removed: LogDestination(const std::string& locale)
* class LogFile:
Removed: LogFile(const std::string& path, const std::string& locale)
* class Logger:
Added: void setDestinations(const std::list<LogDestination*>& destinations)
* class LogStream:
Removed: LogStream(std::ostream& destination, const std::string& locale)
* class URL:
Changed: URL(const std::string& url)
URL(const std::string& url, bool encoded = false)
Changed: void ChangeFullPath(const std::string& newpath)
void ChangeFullPath(const std::string& newpath, bool encoded = false)
Changed: virtual std::string str()
virtual std::string str(bool encode = false)
Changed: virtual std::string plainstr() const
virtual std::string plainstr(bool encode = false) const
Changed: virtual std::string fullstr() const
virtual std::string fullstr(bool encode = false) const
Changed: std::map<std::string, std::string> ParseOptions(const std::string& optstring, char separator)
std::map<std::string, std::string> ParseOptions(const std::string& optstring, char separator, bool encoded = false)
Changed: static std::string OptionString(const std::map<std::string, std::string>& options, char separator)
static std::string OptionString(const std::map<std::string, std::string>& options, char separator, bool encode = false)
Added: void URIDecode()
Added: static std::string URIEncode(const std::string& str)
Added: static std::string URIDecode(const std::string& str)
Removed: bool IsSecureProtocol() const (replaced by DataPoint::RequiresCredentials() in libarcdata)
* class User:
Changed: User(const std::string& name)
User(const std::string& name, const std::string& group="")
Changed: User(int uid)
User(int uid, int gid=-1)
Added: operator bool() const
Added: bool operator !() const
Added: bool SwitchUser() const
Removed: bool RunAs(std::string cmd)
* class UserConfig:
Added: void AddRejectDiscoveryURLs(const std::list<std::string>& urls)
Added: void ClearRejectDiscoveryURLs()
Added: std::map<std::string, ConfigEndpoint> GetAllConfiguredServices()
* class XMLNode:
Added: void Prefix(const std::string& prefix, int recursion = 0)
Added: void StripNamespace(int recursion = 0)
Added: bool Validate(XMLNode schema_doc, std::string &err_msg)
* Functions:
Removed: typedef std::list<std::string> ServiceList[2]
* Defines:
ArcVersion.h:
Added ARC_VERSION
Added ARC_VERSION_NUM
Added ARC_VERSION_MAJOR
Added ARC_VERSION_MINOR
Added ARC_VERSION_PATCH
libarccommunication
libarccomunication was created from the splitting of the libarcclient library.
The following classes is now making up the libarccommunication library:
ARCPolicyHandlerConfig DNListHandlerConfig ClientHTTP ClientHTTPAttributes ClientHTTPwithSAML2SSO ClientInterface ClientSOAP ClientSOAPwithSAML2SSO ClientTCP ClientX509Delegation HTTPClientInfo SecHandlerConfig TCPSec
The following are the changes to the above classes and the libarccommunication library:
* New enum EncryptionLevel:
NoEnc, RequireEnc, PreferEnc, OptionalEnc
* New class TCPSec:
SecurityLayer sec
EncryptionLevel enc
TCPSec()
TCPSec(SecurityLayer)
TCPSec(SecurityLayer, EncryptionLevel)
* class ClientTCP:
Changed: ClientTCP(const BaseConfig&, const std::string&, int, SecurityLayer, int = -1, bool = false)
ClientTCP(const BaseConfig&, const std::string&, int, TCPSec, int = -1, bool = false)
Changed: void AddSecHandler(XMLNode, SecurityLayer, const std::string& = "", const std::string& = "")
void AddSecHandler(XMLNode, TCPSec, const std::string& = "", const std::string& = "")
Added: MCC_Status process(PayloadStreamInterface *, PayloadStreamInterface **, bool)
* New class ClientHTTPAttributes:
ClientHTTPAttributes(const std::string&)
ClientHTTPAttributes(const std::string&, std::multimap<std::string, std::string>&)
ClientHTTPAttributes(const std::string&, const std::string&)
ClientHTTPAttributes(const std::string&, const std::string&, std::multimap<std::string, std::string>&)
ClientHTTPAttributes(const std::string&, const std::string&, uint64_t, uint64_t)
ClientHTTPAttributes(const std::string&, const std::string&, std::multimap<std::string, std::string>&, uint64_t, uint64_t)
(protected) const std::string default_path_
(protected) std::multimap<std::string, std::string> default_attributes_
(protected) const std::string& method_
(protected) const std::string& path_
(protected) std::multimap<std::string, std::string>& attributes_
(protected) uint64_t range_start_
(protected) uint64_t range_end_
* class ClientHTTP:
Added: MCC_Status process(const ClientHTTPAttributes &, PayloadRawInterface *, HTTPClientInfo *, PayloadRawInterface **)
Added: MCC_Status process(const ClientHTTPAttributes &, PayloadStreamInterface *, HTTPClientInfo *, PayloadRawInterface **)
Added: MCC_Status process(const ClientHTTPAttributes &, PayloadRawInterface *, HTTPClientInfo *, PayloadStreamInterface **)
Added: MCC_Status process(const ClientHTTPAttributes &, PayloadStreamInterface *, HTTPClientInfo *, PayloadStreamInterface **)
Added: const URL& GetURL() const
Changed: (protected) SecurityLayer sec
(protected) TCPSec sec
Added: (protected) MCC_Status process(const std::string&, const std::string&, std::multimap<std::string, std::string>&, uint64_t, uint64_t,
MessagePayload *, HTTPClientInfo *, MessagePayload **)
libarccompute
libarccompute was created from splitting of the libarcclient library.
The following classes is now making up the libarccompute library:
AdminDomainAttributes AdminDomainType ApplicationType Broker BrokerPlugin BrokerPluginArgument BrokerPluginLoader BrokerPluginTestACCControl ComputingEndpointAttributes ComputingEndpointType ComputingManagerAttributes ComputingManagerType ComputingServiceAttributes ComputingServiceRetriever ComputingServiceType ComputingServiceUniq ComputingShareAttributes ComputingShareType DataStagingType DiskSpaceRequirementType Endpoint EndpointQueryingStatus EndpointQueryOptions EndpointStatusMap EndpointSubmissionStatus EntityConsumer EntityContainer EntityRetriever EntityRetrieverPlugin EntityRetrieverPluginLoader ExecutableType ExecutionEnvironmentAttributes ExecutionEnvironmentType ExecutionTarget ExecutionTargetSorter GLUE2 GLUE2Entity InputFileType Job JobControllerPlugin JobControllerPluginArgument JobControllerPluginLoader JobControllerPluginTestACCControl JobDescription JobDescriptionParser JobDescriptionParserLoader JobDescriptionParserResult JobDescriptionParserTestACCControl JobDescriptionResult JobIdentificationType JobListRetrieverPlugin JobListRetrieverPluginTESTControl JobState JobStateTEST JobSupervisor LocationAttributes LocationType NotificationType OptIn OutputFileType ParallelEnvironmentType Range RemoteLoggingType ResourcesType ScalableTime ServiceEndpointRetrieverPlugin ServiceEndpointRetrieverPluginTESTControl SlotRequirementType Software SoftwareRequirement SourceType SubmissionStatus Submitter SubmitterPlugin SubmitterPluginArgument SubmitterPluginLoader SubmitterPluginTestACCControl TargetInformationRetrieverPlugin TargetInformationRetrieverPluginTESTControl TargetType
The following are the changes to the above classes and the libarccompute library:
* class BrokerPlugin:
Changed: (protected) const JobDescription* j
(protected) mutable const JobDescription* j
* class Broker:
Changed: bool isValid()
bool isValid(bool = true)
Added: static bool genericMatch(const ExecutionTarget&, const JobDescription&, const Arc::UserConfig&)
Added: const JobDescription& getJobDescription() const
* Removed: class CountedBroker
* Removed: class ExecutionTargetSet
* New: class ExecutionTargetSorter
ExecutionTargetSorter(const Broker&, const std::list<URL>& = std::list<URL>())
ExecutionTargetSorter(const Broker&, const JobDescription&, const std::list<URL>& = std::list<URL>())
ExecutionTargetSorter(const Broker&, const std::list<ComputingServiceType>&, const std::list<URL>& = std::list<URL>())
ExecutionTargetSorter(const Broker&, const JobDescription&, const std::list<ComputingServiceType>&, const std::list<URL>& = std::list<URL>())
virtual ~ExecutionTargetSorter()
void addEntity(const ExecutionTarget&)
void addEntity(const ComputingServiceType&)
void addEntities(const std::list<ComputingServiceType>&)
void reset()
bool next()
bool endOfList()
const ExecutionTarget& operator*() const
const ExecutionTarget& getCurrentTarget() const
const ExecutionTarget* operator->() const
const std::list<ExecutionTarget>& getMatchingTargets() const
const std::list<ExecutionTarget>& getNonMatchingTargets() const
void clear()
void registerJobSubmission()
void set(const Broker&)
void set(const JobDescription&)
void setRejectEndpoints(const std::list<URL>&)
* class JobState:
Added: std::string GetSpecificState() const
Added: (protected) typedef std::string (*SpecificStateFormater)(const std::string&)
Added: (protected) SpecificStateFormater ssf
Added: (protected) static std::string FormatSpecificState(const std::string&)
* class GLUE2Entity:
Changed: T const * const operator->() const
T const * operator->() const
* class SubmitterPlugin:
Changed: virtual bool Submit(const std::list<JobDescription>&, const ExecutionTarget&, EntityConsumer<Job>&, std::list<const JobDescription*>&)
virtual SubmissionStatus Submit(const std::list<JobDescription>&, const ExecutionTarget&, EntityConsumer<Job>&, std::list<const JobDescription*>&)
Changed: virtual bool Migrate(const URL&, const JobDescription&, const ExecutionTarget&, bool, Job&)
virtual bool Migrate(const std::string&, const JobDescription&, const ExecutionTarget&, bool, Job&)
Added: virtual SubmissionStatus Submit(const JobDescription&, const ExecutionTarget&, EntityConsumer<Job>&)
Added: virtual SubmissionStatus Submit(const std::list<JobDescription>&, const std::string&, EntityConsumer<Job>&, std::list<const JobDescription*>&)
Changed: (protected) void AddJobDetails(const JobDescription&, const URL&, const URL&, Job&) const
(protected) void AddJobDetails(const JobDescription&, Job&) const
Added: (protected) DataHandle* dest_handle
Added: (protected) const std::map<std::string, std::string>& getInterfacePluginMap() const
* class Job:
Removed: URL Cluster
Removed: std::string InterfaceName
Changed: URL JobID
std::string JobID
Changed: static bool ListFilesRecursive(const UserConfig&, const URL&, std::list<std::string>&, const std::string& = "")
static bool ListFilesRecursive(const UserConfig&, const URL&, std::list<std::string>&)
Added: URL ServiceInformationURL
Added: std::string ServiceInformationInterfaceName
Added: URL JobStatusURL
Added: std::string JobStatusInterfaceName
Added: URL JobManagementURL
Added: std::string JobManagementInterfaceName
Added: URL StageInDir
Added: URL StageOutDir
Added: URL SessionDir
Added: bool PrepareHandler(const UserConfig&)
Added: bool Update()
Added: bool Clean()
Added: bool Cancel()
Added: bool Resume()
Added: bool Renew()
Added: static bool WriteJobsToFile(const std::string&, const std::list<Job>&, const std::set<std::string>&, std::list<const Job*>&, unsigned = 10, unsigned = 500000)
Changed: static bool RemoveJobsFromFile(const std::string&, const std::list<URL>&, unsigned = 10, unsigned = 500000)
static bool RemoveJobsFromFile(const std::string&, const std::list<std::string>&, unsigned = 10, unsigned = 500000)
Changed: static bool WriteJobIDToFile(const URL&, const std::string&, unsigned = 10, unsigned = 500000)
static bool WriteJobIDToFile(const std::string&, const std::string&, unsigned = 10, unsigned = 500000)
Changed static bool WriteJobIDsToFile(const std::list<URL>&, const std::string&, unsigned = 10, unsigned = 500000)
static bool WriteJobIDsToFile(const std::list<std::string>&, const std::string&, unsigned = 10, unsigned = 500000)
* class ComputingEndpointAttributes;
Changed: std::list<std::string> Capability
std::set<std::string> Capability
* class ComputingServiceAttributes:
Changed: std::list<std::string> Capability
std::set<std::string> Capability
* class ComputingServiceAttributes:
Removed: URL Cluster
Renamed: Endpoint OriginalEndpoint
Endpoint InformationOriginEndpoint
* class ExecutionTarget:
Changed: ExecutionTarget(const CountedPointer<LocationAttributes>&, const CountedPointer<AdminDomainAttributes>&,
const CountedPointer<ComputingServiceAttributes>&, const CountedPointer<ComputingEndpointAttributes>&,
const CountedPointer<ComputingShareAttributes>&, const CountedPointer<ComputingManagerAttributes>&,
const CountedPointer<ExecutionEnvironmentAttributes>&, const CountedPointer< std::map<std::string, double> >&,
const CountedPointer< std::list<ApplicationEnvironment> >&)
ExecutionTarget(const CountedPointer<LocationAttributes>&, const CountedPointer<AdminDomainAttributes>&,
const CountedPointer<ComputingServiceAttributes>&, const CountedPointer<ComputingEndpointAttributes>&,
const std::list< CountedPointer<ComputingEndpointAttributes> >&,
const CountedPointer<ComputingShareAttributes>&, const CountedPointer<ComputingManagerAttributes>&,
const CountedPointer<ExecutionEnvironmentAttributes>&, const CountedPointer< std::map<std::string, double> >&,
const CountedPointer< std::list<ApplicationEnvironment> >&)
Changed: bool Submit(const UserConfig&, const JobDescription&, Job&) const
SubmissionStatus Submit(const UserConfig&, const JobDescription&, Job&) const
Removed: void SaveToStream(std::ostream&, bool) const
Added: std::list< CountedPointer<ComputingEndpointAttributes> > OtherEndpoints
* class JobSupervisor:
Changed: class JobSupervisor
class JobSupervisor : public EntityConsumer<Job>
Removed: std::list<Job> GetJobs(bool = true) const
Added: void addEntity(const Job&)
Changed: void SelectByID(const std::list<URL>&)
void SelectByID(const std::list<std::string>&)
Changed: const std::list<URL>& GetIDsProcessed() const
const std::list<std::string>& GetIDsProcessed() const
Changed: const std::list<URL>& GetIDsNotProcessed() const
Changed: const std::list<std::string>& GetIDsNotProcessed() const
* New class ComputingServiceUniq : public EntityConsumer<ComputingServiceType>
void addEntity(const ComputingServiceType&)
std::list<ComputingServiceType> getServices()
* class ComputingServiceRetriever:
Changed: ComputingServiceRetriever(const UserConfig&, const std::list<Endpoint>& = std::list<Endpoint>(),
const std::list<std::string>& = std::list<std::string>(),
const std::list<std::string>& = std::list<std::string>(),
const std::list<std::string>& = std::list<std::string>(1, Endpoint::GetStringForCapability(Endpoint::COMPUTINGINFO))
ComputingServiceRetriever(const UserConfig&, const std::list<Endpoint>& = std::list<Endpoint>(),
const std::list<std::string>& = std::list<std::string>(),
const std::set<std::string>& = std::set<std::string>(),
const std::list<std::string>& = std::list<std::string>(1, Endpoint::GetStringForCapability(Endpoint::COMPUTINGINFO))
* New class EndpointStatusMap : public std::map<Endpoint, EndpointQueryingStatus, EndpointCompareFn>
EndpointStatusMap()
EndpointStatusMap(EndpointCompareFn)
EndpointStatusMap(const EndpointStatusMap&)
~EndpointStatusMap()
* class Endpoint:
enum CapabilityEnum:
Removed: ANY
Added: JOBCREATION, UNSPECIFIED
Changed: Endpoint(const std::string& = "", const std::list<std::string>& = std::list<std::string>(), const std::string& = "")
Endpoint(const std::string& = "", const std::set<std::string>& = std::set<std::string>(), const std::string& = "")
Added: Endpoint(const ExecutionTarget&, const std::string& = "");
Added: Endpoint(const ComputingEndpointAttributes&, const std::string& = "")
Changed: bool HasCapability( std::string ) const
bool HasCapability(const std::string&) const
Added: std::string getServiceName() const
Added: static bool ServiceIDCompare(const Endpoint&, const Endpoint&)
Changed: std::list<std::string> Capability
std::set<std::string> Capability
Added: std::string ServiceID
Added: static std::pair<EndpointStatusMap::const_iterator, EndpointStatusMap::const_iterator> getServiceEndpoints(const Endpoint&, const EndpointStatusMap&)
* class ApplicationType:
Added: ApplicationType& operator=(const ApplicationType&)
* class ResourcesType:
Added: ResourcesType& operator=(const ResourcesType&)
Changed: ScalableTime<int> TotalWallTime
ScalableTime<int>& TotalWallTime
* class JobDescription:
Added: static JobDescriptionResult ParseFromFile(const std::string&, std::list<JobDescription>&, const std::string& = "", const std::string& = "")
Added: bool Prepare()
* class Software:
Added: void addOptions(const std::list<std::string>&)
* New class EndpointSubmissionStatus:
enum EndpointSubmissionStatusType:
UNKNOWN, NOPLUGIN, SUCCESSFUL
EndpointSubmissionStatus(EndpointSubmissionStatusType = UNKNOWN, const std::string& = "")
bool operator==(EndpointSubmissionStatusType) const
bool operator==(const EndpointSubmissionStatus&) const
bool operator!=(EndpointSubmissionStatusType) const
bool operator!=(const EndpointSubmissionStatus&) const
bool operator!() const
operator bool() const
EndpointSubmissionStatus& operator=(EndpointSubmissionStatusType)
EndpointSubmissionStatus& operator=(const EndpointSubmissionStatus&)
EndpointSubmissionStatusType getStatus() const
const std::string& getDescription() const
std::string str() const
static std::string str(EndpointSubmissionStatusType)
* class Submitter:
Changed: bool Submit(const ExecutionTarget&, const JobDescription&)
SubmissionStatus Submit(const ExecutionTarget&, const JobDescription&)
Changed: bool Submit(const ExecutionTarget&, const JobDescription&, Job&)
SubmissionStatus Submit(const ExecutionTarget&, const JobDescription&, Job&)
Changed: bool Submit(const ExecutionTarget&, const std::list<JobDescription>&)
SubmissionStatus Submit(const ExecutionTarget&, const std::list<JobDescription>&)
Changed: bool Submit(const ExecutionTarget&, const std::list<JobDescription>&, std::list<Job>&)
SubmissionStatus Submit(const ExecutionTarget&, const std::list<JobDescription>&, std::list<Job>&)
Added: SubmissionStatus Submit(const Endpoint&, const JobDescription&)
Added: SubmissionStatus Submit(const Endpoint&, const JobDescription&, Job&);
Added: SubmissionStatus Submit(const Endpoint&, const std::list<JobDescription>&)
Added: SubmissionStatus Submit(const Endpoint&, const std::list<JobDescription>&, std::list<Job>&)
Added: SubmissionStatus Submit(const std::list<Endpoint>&, const std::list<JobDescription>&)
Added: SubmissionStatus Submit(const std::list<Endpoint>&, const std::list<JobDescription>&, std::list<Job>&)
Added: SubmissionStatus BrokeredSubmit(const std::list<std::string>&, const std::list<JobDescription>&,
const std::list<std::string>& = std::list<std::string>())
Added: SubmissionStatus BrokeredSubmit(const std::list<std::string>&, const std::list<JobDescription>&, std::list<Job>&,
const std::list<std::string>& = std::list<std::string>())
Added: SubmissionStatus BrokeredSubmit(const std::list<Endpoint>&, const std::list<JobDescription>&,
const std::list<std::string>& = std::list<std::string>())
Added: SubmissionStatus BrokeredSubmit(const std::list<Endpoint>&, const std::list<JobDescription>&, std::list<Job>&,
const std::list<std::string>& = std::list<std::string>())
Added: const EndpointStatusMap& GetEndpointQueryingStatuses() const
Added: void ClearEndpointQueryingStatuses()
Added: const std::map<Endpoint, EndpointSubmissionStatus>& GetEndpointSubmissionStatuses() const
Added: void ClearEndpointSubmissionStatuses()
Added: void ClearAllStatuses()
Added: void ClearAll()
* class EndpointQueryOptions
Changed: EndpointQueryOptions(std::list<std::string> = std::list<std::string>())
EndpointQueryOptions(const std::set<std::string>& = std::set<std::string>())
Changed: std::list<std::string>& getPreferredInterfaceNames()
const std::set<std::string>& getPreferredInterfaceNames() const
* class EndpointQueryOptions<Endpoint>
Changed: EndpointQueryOptions(bool = false, const std::list<std::string>& = std::list<std::string>(), const std::list<std::string>& = std::list<std::string>())
EndpointQueryOptions(bool = false, const std::list<std::string>& = std::list<std::string>(), const std::list<std::string>& = std::list<std::string>(),
const std::set<std::string>& = std::set<std::string>())
Changed: std::list<std::string>& getPreferredInterfaceNames()
const std::set<std::string>& getPreferredInterfaceNames() const
* class EntityRetriever
Added: EndpointStatusMap getAllStatuses() const
Added: void getServicesWithStatus(const EndpointQueryingStatus&, std::set<std::string>&)
Added: (protected) void checkSuspendedAndStart(const Endpoint&)
Changed: (protected) std::map<Endpoint, EndpointQueryingStatus> statuses
(protected) EndpointStatusMap statuses
Changed: (protected) EndpointQueryOptions<T> options
(protected) const EndpointQueryOptions<T> options
* New: class ServiceEndpointRetrieverPlugin : public EntityRetrieverPlugin<Endpoint>:
(protected) ServiceEndpointRetrieverPlugin(PluginArgument*)
(protected) virtual ~ServiceEndpointRetrieverPlugin()
* New: class TargetInformationRetrieverPlugin : public EntityRetrieverPlugin<ComputingServiceType>:
(protected) TargetInformationRetrieverPlugin(PluginArgument*)
(protected) virtual ~TargetInformationRetrieverPlugin()
* New: class JobListRetrieverPlugin : public EntityRetrieverPlugin<Job>:
(protected) JobListRetrieverPlugin(PluginArgument*)
(protected) virtual ~JobListRetrieverPlugin()
* class EndpointQueryingStatus:
enum EndpointQueryingStatusType:
Added: SUSPENDED_NOTREQUIRED
Changed: bool operator==(EndpointQueryingStatusType)
bool operator==(EndpointQueryingStatusType) const
Changed: bool operator==(const EndpointQueryingStatus&)
bool operator==(const EndpointQueryingStatus&) const
Changed: bool operator!=(EndpointQueryingStatusType)
bool operator!=(EndpointQueryingStatusType) const
Changed: bool operator!=(const EndpointQueryingStatus&)
bool operator!=(const EndpointQueryingStatus&) const
Changed: EndpointQueryingStatus getStatus() const
EndpointQueryingStatusType getStatus() const
* class JobControllerPlugin:
Changed: virtual void UpdateJobs(std::list<Job*>&, std::list<URL>& , std::list<URL>&, bool = false) const
virtual void UpdateJobs(std::list<Job*>&, std::list<std::string>&, std::list<std::string>&, bool = false) const
Changed: virtual bool CleanJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const
virtual bool CleanJobs(const std::list<Job*>&, std::list<std::string>&, std::list<std::string>&, bool = false) const
Changed: virtual bool CancelJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const
virtual bool CancelJobs(const std::list<Job*>&, std::list<std::string>&, std::list<std::string>&, bool = false) const
Changed virtual bool RenewJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const
virtual bool RenewJobs(const std::list<Job*>&, std::list<std::string>&, std::list<std::string>&, bool = false) const
Changed: virtual bool ResumeJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const
virtual bool ResumeJobs(const std::list<Job*>&, std::list<std::string>&, std::list<std::string>&, bool = false) const
* Renamed: class JobControllerPluginPluginArgument
class JobControllerPluginArgument
* class SubmitterPluginTestACCControl:
Changed: static bool submitStatus
static SubmissionStatus submitStatus
* class ServiceEndpointRetrieverPluginTESTControl:
Removed: static float delay
Changed: static EndpointQueryingStatus status
static std::list<EndpointQueryingStatus> status
Changed: static std::list<Endpoint> endpoints
static std::list< std::list<Endpoint> > endpoints
Added: static std::list<SimpleCondition*> condition
* Functions:
Added: (friend LocationAttributes) std::ostream& operator<<(std::ostream&, const LocationAttributes&)
Added: (friend AdminDomainAttributes) std::ostream& operator<<(std::ostream&, const AdminDomainAttributes&)
Added: (friend ExecutionEnvironmentAttributes) std::ostream& operator<<(std::ostream&, const ExecutionEnvironmentAttributes&)
Added: (friend ComputingManagerAttributes) std::ostream& operator<<(std::ostream&, const ComputingManagerAttributes&)
Added: (friend ComputingShareAttributes) std::ostream& operator<<(std::ostream&, const ComputingShareAttributes&)
Added: (friend ComputingServiceType) std::ostream& operator<<(std::ostream&, const ComputingServiceType&)
Added: (friend ComputingEndpointAttributes) std::ostream& operator<<(std::ostream&, const ComputingEndpointAttributes&)
Added: (friend ComputingServiceAttributes) std::ostream& operator<<(std::ostream&, const ComputingServiceAttributes&)
Added: (friend ExecutionTarget) std::ostream& operator<<(std::ostream&, const ExecutionTarget&)
Added: (friend EndpointQueryingStatus) bool operator==(EndpointQueryingStatusType, const EndpointQueryingStatus&)
* Typedef:
Removed: typedef EntityRetrieverPlugin<Endpoint> ServiceEndpointRetrieverPlugin
Removed: typedef EntityRetrieverPlugin<ComputingServiceType> TargetInformationRetrieverPlugin
Removed: typedef EntityRetrieverPlugin<Job> JobListRetrieverPlugin
Added: typedef bool (*EndpointCompareFn)(const Endpoint&, const Endpoint&);
libarcloader
* class PluginDesc: Added: uint32_t priority * Removed class LoadableModuleDescription * Typedef: Removed: std::map<std::string, LoadableModuleDescription> plugin_cache_t Added: void (*arc_module_constructor_func)(Glib::Module*, ModuleManager*) Added: void (*arc_module_destructor_func)(Glib::Module*, ModuleManager*)
libarcdata
libarcdata was renamed from libarcdata2
* class DataMover:
Added: void Cancel()
* class DataPointIndex:
Changed: virtual DataStatus Check()
virtual DataStatus Check(bool check_meta)
* class DataPoint:
Added: typedef void(*Callback3rdParty)(unsigned long long int bytes_transferred)
Added: static DataStatus Transfer3rdParty(const URL& source, const URL& destination, const UserConfig& usercfg, Callback3rdParty callback = NULL)
Changed: virtual DataStatus Check()
virtual DataStatus Check(bool check_meta)
Added: virtual DataStatus Rename(const URL& newurl)
Added: virtual bool RequiresCredentials() const (replaces URL::IsSecureProtocol() in libarccommon)
Removed: virtual bool CheckCreated() const
Added: virtual bool CheckModified() const
Removed: virtual void SetCreated(const Time& val)
Added: virtual void SetModified(const Time& val)
Removed: virtual const Time& GetCreated() const
Added: virtual const Time& GetModified() const
* class DataStatus:
* enum DataStatusType:
Added: RenameError
Deprecated: ListNonDirError, StatNotPresentError and all *ErrorRetryable
Added: DataStatus(const DataStatusType& status, int error_no, const std::string& desc="")
Added: void SetErrNo(int error_no)
Added: int GetErrno() const
Added: std::string GetStrErrno() const
* class FileInfo:
Removed: bool CheckCreated() const
Added: bool CheckModified() const
Removed: void SetCreated(const Time& t)
Added: void SetModified(const Time& t)
Removed: Time GetCreated() const
Added: Time GetModified() const
libarccredential
* New struct AuthN::certInfo
std::string certname
std::string subject_dn
std::string issuer_dn
unsigned long serial
Arc::Time start
Arc::Time end
* Functions:
Changed: bool AuthN::nssCreateCert(const std::string&, const std::string&, const char*, const int, std::string&, bool = true)
bool AuthN::nssCreateCert(const std::string&, const std::string&, const char*, const int, const std::string&, std::string&, bool = true)
Added: void AuthN::nssListUserCertificatesInfo(std::list<certInfo>&)
Added: bool parseVOMSAC(const std::string&, const std::string&, const std::string&, const std::string&, VOMSTrustList&, std::vector<VOMSACInfo>&,
bool = true, bool = false)
Added: char *VOMSEncode(const char *, int, int *)
Added: bool VOMSACSeqEncode(const std::string&, std::string&)
Added: bool VOMSACSeqEncode(const std::list<std::string>, std::string&)
Added: char* AuthN::nss_get_password_from_console(PK11SlotInfo*, PRBool, void *)
* Typedef:
Changed: unsigned int uint32
unsigned int AuthN::uint32
Changed: int int32
int AuthN::int32
Changed: unsigned short uint16
unsigned short AuthN::uint16
Changed: short int16
short AuthN::int16
Changed: unsigned char uint8
unsigned char AuthN::uint8
Changed: signed char int8
signed char AuthN::int8
libarcdelegation
* class DelegationInterface:
typedef enum ServiceType:
Added: EMIDS, EMIDSRENEW
libarcmessage
* class MCC:
Added: (protected) Glib::Mutex next_lock_
* class PayloadStreamInterface:
Changed: virtual std::string Get() = 0
virtual std::string Get()
Changed: virtual bool Get(std::string&) = 0
virtual bool Get(std::string&)
Changed: virtual bool Put(const std::string&) = 0
virtual bool Put(const std::string&)
Changed: virtual bool Put(const char*) = 0
virtual bool Put(const char*)
Added: virtual bool Get(PayloadStreamInterface&, int&)
Added: virtual bool Put(PayloadStreamInterface&, Size_t)
* class PayloadStream:
Removed: virtual std::string Get()
Removed: virtual bool Get(std::string&)
Removed: virtual bool Put(const char*)
Removed: virtual bool Put(const std::string&)
libarcinfosys
* class InfoRegistrar: Added: bool empty()
libarcdatastaging
* class DataStaging::DTR: Removed: std::list<DTRCallback*> get_callbacks(const std::map<StagingProcesses, std::list<DTRCallback*> >& proc_callback, StagingProcesses owner) Removed: DTR() Added: static Arc::LogLevel LOG_LEVEL * class DataStaging::Scheduler: Added: static Scheduler* getInstance() * Functions in namespace DataStaging: Added DTR_ptr createDTRPtr(const std::string& source, const std::string& destination, const Arc::UserConfig& usercfg, const std::string& jobid, const uid_t& uid, DTRLogger log) Added DTRLogger createDTRLogger(Arc::Logger& parent, const std::string& subdomain)
libarcglobusutils
* Functions: Added: int globus_error_to_errno(const std::string&, int)
Version 1.1.1 → 2.0.0
libarccommon
* Removed: class MemoryAllocationException
* Removed: class ByteArray
* Removed: class DItem
* Removed: class DBranch
* Removed: class DItemString
* class FileLock:
Changed: bool check()
int check(bool = true)
* class Run:
Added: Time RunTime()
Added: Time ExitTime()
Added: (protected) Time run_time_
Added: (protected) Time exit_time_
* class PrintFBase:
Added: virtual void msg(std::string&) = 0
* class PrintF:
Added: virtual void msg(std::string&)
* class IString:
Added: std::string str()
* template<typename T> class AutoPointer:
Renamed: operator T*() const
T* Ptr() const
* template<typename T> class CountedPointer:
Changed: CountedPointer( CountedPointer<T>&)
CountedPointer(const CountedPointer<T>&)
Added: bool operator==(const CountedPointer&) const
Added: bool operator!=(const CountedPointer&) const
Added: bool operator<(const CountedPointer&) const
Renamed: operator T*() const
T* Ptr() const
Changed: int get()
virtual int get() const
Changed: void wait()
virtual void wait() const
Changed: bool wait(int)
virtual bool wait(int) const
* New class ThreadedPointerBase:
ThreadedPointerBase(void *)
ThreadedPointerBase* add()
void* rem()
void* ptr() const
void rel()
unsigned int cnt() const
void lock()
void unlock()
void wait()
bool wait(Glib::TimeVal)
* New template<typename T> class ThreadedPointer:
ThreadedPointer()
ThreadedPointer(T *)
ThreadedPointer(const ThreadedPointer<T>&)
ThreadedPointer<T>& operator=(T *)
ThreadedPointer<T>& operator=(const ThreadedPointer<T>&)
T& operator*() const
T* operator->() const
operator bool() const
bool operator!() const
bool operator==(const ThreadedPointer&) const
bool operator!=(const ThreadedPointer&) const
bool operator<(const ThreadedPointer&) const
T* Ptr() const
T* Release()
unsigned int Holders()
unsigned int WaitOutRange(unsigned int, unsigned int)
unsigned int WaitOutRange(unsigned int, unsigned int, int)
unsigned int WaitInRange(unsigned int, unsigned int)
unsigned int WaitInRange(unsigned int, unsigned int, int)
* class ThreadInitializer:
Added: void waitExit()
* class ConfigEndpoint:
enum Type:
REGISTRY
COMPUTINGINFO
ANY
ConfigEndpoint(const std::string& = "", const std::string& = "", ConfigEndpoint::Type = ConfigEndpoint::ANY)
Type type
std::string URLString
std::string InterfaceName
std::string RequestedSubmissionInterfaceName
operator bool() const
bool operator!() const
bool operator==(ConfigEndpoint) const
* class initializeCredentialsType:
enum initializeType:
Removed: SkipCACredentials
Added: NotTryCredentials
Added: SkipCANotTryCredentials
Added: SkipCATryCredentials
Added: SkipCARequireCredentials
Added: operator initializeType()
* class UserConfig:
Removed: bool ResolveAliases(std::list<std::string>&, ServiceType);
Removed: bool AddServices(const std::list<std::string>&, ServiceType);
Removed: bool AddServices(const std::list<std::string>&, const std::list<std::string>&, ServiceType)
Removed: const std::list<std::string>& GetSelectedServices(ServiceType) const
Removed: const std::list<std::string>& GetRejectedServices(ServiceType) const
Removed: void ClearSelectedServices()
Removed: void ClearSelectedServices(ServiceType)
Removed: void ClearRejectedServices()
Removed: void ClearRejectedServices(ServiceType)
Changed: void InitializeCredentials()
bool InitializeCredentials(initializeCredentialsType)
Added: std::list<ConfigEndpoint> GetDefaultServices(ConfigEndpoint::Type = ConfigEndpoint::ANY)
Added: ConfigEndpoint GetService(const std::string&)
Added: std::list<ConfigEndpoint> GetServices(const std::string&, ConfigEndpoint::Type = ConfigEndpoint::ANY)
Added: std::list<ConfigEndpoint> GetServicesInGroup(const std::string&, ConfigEndpoint::Type = ConfigEndpoint::ANY)
Added: const std::string& InfoInterface() const
Added: bool InfoInterface(const std::string&)
Added: const std::string& SubmissionInterface() const
Added: bool SubmissionInterface(const std::string&)
Added: const std::list<std::string>& RejectDiscoveryURLs() const
Added: const std::list<std::string>& RejectManagementURLs() const
* Functions:
Changed: template<typename T> std::string tostring(T, const int = 0, const int = 0)
template<typename T> std::string tostring(T, int = 0, int = 0)
Changed: bool FileCreate(const std::string&, const std::string&, uid_t = 0, gid_t = 0 )
bool FileCreate(const std::string&, const std::string&, uid_t = 0, gid_t = 0, mode_t = 0)
Changed: bool DirDelete(const std::string&)
bool DirDelete(const std::string&, bool = true)
Changed: bool DirDelete(const std::string&, uid_t,gid_t)
bool DirDelete(const std::string&, bool, uid_t, gid_t)
Changed: bool TmpFileCreate(std::string&, const std::string&, uid_t = 0, gid_t = 0)
bool TmpFileCreate(std::string&, const std::string&, uid_t = 0, gid_t = 0, mode_t = 0)
Added: bool strtoint(const std::string&, signed int&, int = 10)
Added: bool strtoint(const std::string&, unsigned int&, int = 10)
Added: bool strtoint(const std::string&, signed long&, int = 10)
Added: bool strtoint(const std::string&, unsigned long&, int = 10)
Added: bool strtoint(const std::string&, signed long long&, int = 10)
Added: bool strtoint(const std::string&, unsigned long long&, int = 10)
Added: std::string inttostr(signed long long, int = 10, int = 0)
Added: std::string inttostr(unsigned long long, int = 10, int = 0)
Added: inline std::string inttostr(signed int, int = 10, int = 0)
Added: inline std::string inttostr(unsigned int, int = 10, int = 0)
Added: inline std::string inttostr(signed long, int = 10, int = 0)
Added: inline std::string inttostr(unsigned long, int = 10, int = 0)
Added: bool FileRead(const std::string&, std::string&, uid_t = 0, gid_t = 0)
Added: bool CanonicalDir(std::string&, bool = true)
libarcclient
* Removed class TargetRetriever
* Removed class TargetGenerator
* Removed class JobController
* New class JobControllerPlugin:
(protected) JobControllerPlugin(const UserConfig&, PluginArgument*)
virtual void UpdateJobs(std::list<Job*>&, bool = false) const
virtual void UpdateJobs(std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const = 0
virtual bool CleanJobs(const std::list<Job*>&, bool = false) const
virtual bool CleanJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const = 0
virtual bool CancelJobs(const std::list<Job*>&, bool = false) const
virtual bool CancelJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const = 0
virtual bool RenewJobs(const std::list<Job*>&, bool = false) const
virtual bool RenewJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const = 0
virtual bool ResumeJobs(const std::list<Job*>&, bool = false) const
virtual bool ResumeJobs(const std::list<Job*>&, std::list<URL>&, std::list<URL>&, bool = false) const = 0
virtual bool GetJobDescription(const Job&, std::string&) const = 0
virtual bool GetURLToJobResource(const Job&, Job::ResourceType, URL&) const = 0
virtual std::string GetGroupID() const
virtual const std::list<std::string>& SupportedInterfaces() const
(protected) const UserConfig& usercfg;
(protected) std::list<std::string> supportedInterfaces
(protected) static Logger logger
* Renamed class JobControllerLoader
JobControllerPluginLoader
* class JobControllerPluginLoader:
Removed: const std::list<JobController*>& GetJobControllers() const
Added: JobControllerPlugin* loadByInterfaceName(const std::string&, const UserConfig&)
* Renamed class JobControllerPluginArgument
JobControllerPluginPluginArgument
* class JobSupervisor
Removed: JobSupervisor(const UserConfig&, const std::list<std::string>&)
Removed: bool Get(const std::list<std::string>&, const std::string&, bool, bool, std::list<URL>&)
Removed: bool Kill(const std::list<std::string>&, std::list<URL>&)
Removed: const std::list<JobController*>& GetJobControllers()
Removed: bool JobsFound() const;
Changed: std::list<Job> GetJobs() const
std::list<Job> GetJobs(bool = true) const
Changed: bool Renew(const std::list<std::string>&, std::list<URL>&)
bool Renew()
Changed: bool Resume(const std::list<std::string>&, std::list<URL>&)
bool Resume()
Changed: bool Resubmit(const std::list<std::string>&, int, std::list<Job>&, std::list<URL>&)
bool Resubmit(int, const std::list<Endpoint>&, std::list<Job>&, const std::list<std::string>& = std::list<std::string>())
Changed: bool Migrate(bool, std::list<Job>&, std::list<URL>&)
bool Migrate(bool, const std::list<Endpoint>&, std::list<Job>&, const std::list<std::string>& = std::list<std::string>())
Changed: std::list<URL> Cancel(const std::list<URL>&, std::list<URL>&)
bool Cancel()
Changed: std::list<URL> Clean(const std::list<URL>&, std::list<URL>&)
bool Clean()
Added: bool Retrieve(const std::string&, bool, bool, std::list<std::string>&)
Added: const std::list<Job>& GetAllJobs() const
Added: std::list<Job> GetSelectedJobs() const
Added: void SelectValid()
Added: void SelectByStatus(const std::list<std::string>&)
Added: void SelectByID(const std::list<URL>&)
Added: void ClearSelection()
Added: const std::list<URL>& GetIDsProcessed() const
Added: const std::list<URL>& GetIDsNotProcessed() const
* Renamed class Submitter
SubmitterPlugin
* Removed class Broker
* New class BrokerPlugin
BrokerPlugin(BrokerPluginArgument*)
virtual bool operator() (const ExecutionTarget&, const ExecutionTarget&) const
virtual bool match(const ExecutionTarget&) const
virtual void set(const JobDescription&)
(protected) const UserConfig& uc
(protected) const JobDescription* j
(protected) static Logger logger
* New class Broker:
Broker(const UserConfig&, const std::string& = "")
Broker(const UserConfig&, const JobDescription&, const std::string& = "")
Broker(const Broker&)
Broker& operator=(const Broker&)
bool operator() (const ExecutionTarget&, const ExecutionTarget&) const
bool match(const ExecutionTarget&) const
bool isValid() const
void set(const JobDescription&)
* class BrokerPluginArgument:
Changed: operator const UserConfig&()
operator const UserConfig&() const
* Renamed class BrokerLoader
BrokerPluginLoader
* class BrokerPluginLoader:
Removed: const std::list<Broker*>& GetBrokers() const
Changed: BrokerPlugin* load(const std::string&, const UserConfig&);
BrokerPlugin* load(const UserConfig&, const std::string& = "", bool = true)
Added: BrokerPlugin* load(const UserConfig& uc, const JobDescription&, const std::string& = "", bool = true)
Added: BrokerPlugin* copy(const BrokerPlugin*, bool = true)
* New class CountedBroker
CountedBroker(Broker*)
CountedBroker(const CountedBroker&)
bool operator()(const ExecutionTarget&,const ExecutionTarget&) const
* New class ExecutionTargetSet:
ExecutionTargetSet(const Broker&, const std::list<URL>& = std::list<URL>())
ExecutionTargetSet(const Broker&, const std::list<ComputingServiceType>&, const std::list<URL>& = std::list<URL>())
std::pair<ExecutionTargetSet::iterator, bool> insert(const ExecutionTarget&)
ExecutionTargetSet::iterator insert(ExecutionTargetSet::iterator, const ExecutionTarget&)
void addEntity(const ComputingServiceType&)
void addEntities(const std::list<ComputingServiceType>&)
void set(const JobDescription&)
* class JobController:
Removed: bool Cat(const std::list<std::string>&, const std::string&)
Removed: bool PrintJobStatus(const std::list<std::string>&, bool)
* Renamed class Submitter
SubmitterPlugin
* class SubmitterPlugin:
Removed: URL Submit(const JobDescription&, const ExecutionTarget&)
Removed: bool Submit(const JobDescription&, Job&)
Removed: URL Migrate(const URL&, const JobDescription&, const ExecutionTarget&, bool)
Removed: bool Migrate(const URL&, const JobDescription&, bool, Job&)
Removed: void AddJob(const JobDescription&, const URL&, const URL&, const URL&)
Removed: void AddJob(const JobDescription&, const URL&, const URL&, const URL&, const std::map<std::string, std::string>&) const
Removed: void SetSubmissionTarget(const ExecutionTarget&)
Removed: (protected) const std::string flavour
Removed: (protected) const ExecutionTarget* target
Moved: bool GetTestJob(const int&, JobDescription&)
static bool JobDescription::GetTestJob(int, JobDescription&)
Moved: virtual bool ModifyJobDescription(JobDescription&, const ExecutionTarget&) const = 0
bool JobDescription::Prepare(const ExecutionTarget&)
Changed: SubmitterPlugin(const UserConfig&, const std::string&)
SubmitterPlugin(const UserConfig&, PluginArgument*)
Changed: virtual bool Submit(const JobDescription&, const ExecutionTarget&, Job&) = 0;
virtual bool Submit(const std::list<JobDescription>&, const ExecutionTarget&,
EntityConsumer<Job>&, std::list<const JobDescription*>&) = 0
Changed: virtual bool Migrate(const URL&, const JobDescription&, const ExecutionTarget&, bool, Job&) = 0
virtual bool Migrate(const URL&, const JobDescription&, const ExecutionTarget&, bool, Job&)
Changed: (protected) void AddJobDetails(const JobDescription&, const URL&, const URL&, const URL&, Job&) const
(protected) void AddJobDetails(const JobDescription&, const URL&, const URL&, Job&) const
Added: (protected) std::list<std::string> supportedInterfaces
Added: virtual const std::list<std::string>& SupportedInterfaces() const
* Renamed class SubmitterLoader
SubmitterPluginLoader
* class SubmitterPluginLoader:
Removed: const std::list<Submitter*>& GetSubmitters() const
Added: SubmitterPlugin* loadByInterfaceName(const std::string&, const UserConfig&)
* New class Submitter:
Submitter(const UserConfig&)
void addConsumer(EntityConsumer<Job>&)
void removeConsumer(EntityConsumer<Job>&)
bool Submit(const ExecutionTarget&, const JobDescription&)
bool Submit(const ExecutionTarget&, const JobDescription&, Job&)
bool Submit(const ExecutionTarget&, const std::list<JobDescription>&)
bool Submit(const ExecutionTarget&, const std::list<JobDescription>&, std::list<Job>&)
const std::list<const JobDescription*>& GetDescriptionsNotSubmitted() const
void ClearNotSubmittedDescriptions()
* New class EndpointQueryingStatus:
EndpointQueryingStatus(EndpointQueryingStatusType = UNKNOWN, const std::string& = "")
enum EndpointQueryingStatusType:
UNKNOWN, STARTED, FAILED, NOPLUGIN, SUCCESSFUL
static std::string str(EndpointQueryingStatusType)
bool operator==(EndpointQueryingStatusType)
bool operator==(const EndpointQueryingStatus&)
bool operator!=(EndpointQueryingStatusType)
bool operator!=(const EndpointQueryingStatus&)
bool operator!() const
operator bool() const
EndpointQueryingStatus& operator=(EndpointQueryingStatusType)
EndpointQueryingStatus& operator=(const EndpointQueryingStatus&)
EndpointQueryingStatus getStatus() const
const std::string& getDescription() const
std::string str() const
* New template<typename T> class EndpointQueryOptions
EndpointQueryOptions(std::list<std::string> = std::list<std::string>())
std::list<std::string>& getPreferredInterfaceNames()
* New template<> class EndpointQueryOptions<Endpoint>
EndpointQueryOptions(bool = false, const std::list<std::string>& = std::list<std::string>(),
const std::list<std::string>& = std::list<std::string>())
bool recursiveEnabled() const
const std::list<std::string>& getCapabilityFilter() const
const std::list<std::string>& getRejectedServices() const
std::list<std::string>& getPreferredInterfaceNames()
* New template<typename T> class EntityRetrieverPlugin:
virtual const std::list<std::string>& SupportedInterfaces() const
virtual bool isEndpointNotSupported(const Endpoint&) const = 0
virtual EndpointQueryingStatus Query(const UserConfig&, const Endpoint&, std::list<T>&, const EndpointQueryOptions<T>&) const = 0
static const std::string kind
(protected) EntityRetrieverPlugin(PluginArgument*)
(protected) std::list<std::string> supportedInterfaces
* New template<typename T> class EntityRetrieverPluginLoader:
EntityRetrieverPluginLoader()
EntityRetrieverPlugin<T>* load(const std::string&)
static std::list<std::string> getListOfPlugins()
const std::map<std::string, EntityRetrieverPlugin<T> *>& GetTargetInformationRetrieverPlugins() const
(protected) std::map<std::string, EntityRetrieverPlugin<T> *> plugins
(protected) static Logger logger;
* New template<typename T> class EntityConsumer:
virtual void addEntity(const T&) = 0
* template<typename T> class EntityContainer:
virtual void addEntity(const T&)
* template<typename T> class EntityRetriever:
EntityRetriever(const UserConfig&, const EndpointQueryOptions<T>& = EndpointQueryOptions<T>())
void wait() const
bool isDone() const
void addConsumer(EntityConsumer<T>&)
void removeConsumer(const EntityConsumer<T>&)
EndpointQueryingStatus getStatusOfEndpoint(const Endpoint&) const;
bool setStatusOfEndpoint(const Endpoint&, const EndpointQueryingStatus&, bool = true);
virtual void addEntity(const T&);
virtual void addEndpoint(const Endpoint&);
(protected) static void queryEndpoint(void *arg_);
(protected) class Common:
Common(EntityRetriever*, const UserConfig&)
void deactivate()
bool lockExclusiveIfValid()
void unlockExclusive()
bool lockSharedIfValid()
void unlockShared()
operator const UserConfig&() const
const std::list<std::string>& getAvailablePlugins()
void setAvailablePlugins(const std::list<std::string>&)
EntityRetriever* operator->()
EntityRetriever* operator*()
(protected) ThreadedPointer<Common> common
(protected) class Result:
Result(bool = false)
Result(const Result&)
void setSuccess()
bool wait(int = -1) const
(protected) Result result
(protected) class ThreadArg:
ThreadArg(const ThreadedPointer<Common>&, Result&, const Endpoint&, const EndpointQueryOptions<T>&)
ThreadArg(const ThreadArg&, Result&)
ThreadedPointer<Common> common
Result result
Endpoint endpoint
std::string pluginName
EndpointQueryOptions<T> options
(protected) std::map<Endpoint, EndpointQueryingStatus> statuses
(protected) static Logger logger
(protected) const UserConfig& uc
(protected) std::list< EntityConsumer<T>* > consumers
(protected) EndpointQueryOptions<T> options
(protected) mutable SimpleCondition consumerLock
(protected) mutable SimpleCondition statusLock
(protected) std::map<std::string, std::string> interfacePluginMap
* New typedef EntityRetriever<Endpoint> ServiceEndpointRetriever;
* New typedef EntityRetrieverPlugin<Endpoint> ServiceEndpointRetrieverPlugin
* New typedef EntityRetrieverPluginLoader<Endpoint> ServiceEndpointRetrieverPluginLoader
* New typedef EntityRetriever<ComputingServiceType> TargetInformationRetriever
* New typedef EntityRetrieverPlugin<ComputingServiceType> TargetInformationRetrieverPlugin
* New typedef EntityRetrieverPluginLoader<ComputingServiceType> TargetInformationRetrieverPluginLoader
* New typedef EntityRetriever<Job> JobListRetriever
* New typedef EntityRetrieverPlugin<Job> JobListRetrieverPlugin
* New typedef EntityRetrieverPluginLoader<Job> JobListRetrieverPluginLoader
* New class Endpoint:
enum CapabilityEnum:
REGISTRY, COMPUTINGINFO, JOBLIST, JOBSUBMIT, JOBMANAGEMENT, ANY
static std::string GetStringForCapability(Endpoint::CapabilityEnum)
Endpoint(const std::string& = "", const std::list<std::string>& = std::list<std::string>(), const std::string& = "")
Endpoint(const std::string&, const Endpoint::CapabilityEnum, const std::string& = "")
Endpoint(const ConfigEndpoint&)
bool HasCapability(Endpoint::CapabilityEnum) const
bool HasCapability(std::string) const
std::string str() const
bool operator<(const Endpoint&) const
Endpoint& operator=(const ConfigEndpoint&)
std::string URLString
std::string InterfaceName
std::string HealthState
std::string HealthStateInfo
std::string QualityLevel
std::list<std::string> Capability
std::string RequestedSubmissionInterfaceName
* class JobDescription:
Removed: operator bool() const
Removed: bool Parse(const std::string&, const std::string& = "", const std::string& = "")
Removed: bool Parse(const XMLNode&);
Removed: std::string UnParse(const std::string& = "nordugrid:jsdl") const
Removed: void Print(bool = false) const
Removed: std::list<FileType> Files
Changed: static bool Parse(const std::string&, std::list<JobDescription>&, const std::string& = "", const std::string& = "")
static JobDescriptionResult Parse(const std::string&, std::list<JobDescription>&, const std::string& = "", const std::string& = "")
Changed: bool UnParse(std::string&, std::string, const std::string& = "") const
JobDescriptionResult UnParse(std::string&, std::string, const std::string& = "") const
Changed: bool SaveToStream(std::ostream&, const std::string&) const
JobDescriptionResult SaveToStream(std::ostream&, const std::string&) const
Added: DataStagingType DataStaging
Added: bool Prepare(const ExecutionTarget&)
Added: static bool GetTestJob(int, JobDescription&)
* New template<class T> class OptIn:
OptIn<T>()
OptIn<T>(const T&)
OptIn<T>(const T&, bool)
OptIn<T>(const OptIn<T>&)
OptIn<T>& operator=(const OptIn<T>&)
OptIn<T>& operator=(const T&)
operator T() const
bool optIn
T v
* class IdentificationType:
Removed: std::string JobVOName
Removed: std::list<std::string> UserTag
Removed: std::list<std::string> ActivityOldId
Added: std::list<std::string> ActivityOldID
Added: std::string Type
Added: std::list<std::string> Annotation
* class ExecutableType:
Removed: std::string Name
Added: std::string Path
Added: std::pair<bool, int> SuccessExitCode
* New class RemoteLoggingType:
std::string ServiceType
URL Location
bool optional
* class ApplicationType:
Removed: ExecutableType Prologue
Removed: ExecutableType Epilogue
Added: std::list<ExecutableType> PreExecutable
Added: std::list<ExecutableType> PostExecutable
Changed: std::list<URL> RemoteLogging
std::list<RemoteLoggingType> RemoteLogging
Changed: Time ExpiryTime
Time ExpirationTime
* Removed class ResourceSlotType:
* New class SlotRequirementType:
SlotRequirementType()
int NumberOfSlots
int SlotsPerHost
enum ExclusiveExecutionType:
EE_DEFAULT, EE_TRUE, EE_FALSE
ExclusiveExecutionType ExclusiveExecution;
* New class ParallelEnvironmentType:
ParallelEnvironmentType()
std::string Type
std::string Version
int ProcessesPerSlot
int ThreadsPerProcess
std::multimap<std::string, std::string> Options
* class ResourcesType:
Changed: ResourceSlotType SlotRequirement
SlotRequirementType SlotRequirement
Added: ParallelEnvironmentType ParallelEnvironment
Added: OptIn<std::string> Coprocessor
* New class JobDescriptionResult:
JobDescriptionResult(bool)
JobDescriptionResult(bool, const std::string&)
operator bool(void)
bool operator!(void)
const std::string& str(void)
* class JobDescriptionParser:
Changed: virtual bool Parse(const std::string&, std::list<JobDescription>&,
const std::string& = "", const std::string& = "") const = 0
virtual JobDescriptionParserResult Parse(const std::string&, std::list<JobDescription>&,
const std::string& = "", const std::string& = "") const = 0
Changed: virtual bool UnParse(const JobDescription&, std::string&,
const std::string&, const std::string& = "") const = 0
virtual JobDescriptionParserResult UnParse(const JobDescription&, std::string&,
const std::string&, const std::string& = "") const = 0
Added: const std::string& GetError()
Changed: (protected) JobDescriptionParser()
(protected) JobDescriptionParser(PluginArgument*)
Added: (protected) mutable std::string error
* class JobDescriptionParser::iterator:
Removed: iterator& operator=(const iterator&)
* New class JobDescriptionParserResult:
enum Result:
Success, Failure, WrongLanguage
JobDescriptionParserResult()
JobDescriptionParserResult(bool)
JobDescriptionParserResult(Result)
operator bool()
bool operator!()
bool operator==(bool)
bool operator==(Result)
* New class DataStagingType:
Added: DataStagingType()
Added: std::list<InputFileType> InputFiles
Added: std::list<OutputFileType> OutputFiles
* Removed class FileType
* New class SourceType:
SourceType()
SourceType(const URL&)
SourceType(const std::string&)
SourceType& operator=(const URL&)
SourceType& operator=(const std::string&)
std::string DelegationID
* New class TargetType:
TargetType()
TargetType(const URL& u)
TargetType(const std::string&)
std::string DelegationID
enum CreationFlagEnumeration:
CFE_DEFAULT, CFE_OVERWRITE, CFE_APPEND, CFE_DONTOVERWRITE
CreationFlagEnumeration CreationFlag
bool UseIfFailure
bool UseIfCancel
bool UseIfSuccess
* New class InputFileType:
InputFileType()
std::string Name
bool IsExecutable
long FileSize
std::string Checksum
std::list<SourceType> Sources
* New class OutputFileType:
OutputFileType()
std::string Name
std::list<TargetType> Targets
* class JobDescriptionParser:
Added: const std::string& GetError(void)
Added: (protected) std::string error
* class Job:
Removed: void Print(bool) const
Removed: std::string Flavour
Removed: URL SubmissionEndpoint
Removed: URL InfoEndpoint
Removed: URL ISB
Removed: URL OSB
Removed: std::string AuxInfo;
Removed: std::list<std::string> UsedApplicationEnvironment
Removed: int UsedSlots
Changed: static bool CompareJobID(const Job* a, const Job* b);
static bool CompareJobID(const Job&, const Job&)
Changed: static bool CompareSubmissionTime(const Job*, const Job*)
static bool CompareSubmissionTime(const Job&, const Job&)
Changed static bool CompareJobName(const Job*, const Job*)
static bool CompareJobName(const Job&, const Job&)
Changed: URL IDFromEndpoint
std::string IDFromEndpoint
Added: void Update(XMLNode)
Added: bool GetURLToResource(ResourceType, URL&) const
Added: bool Retrieve(const UserConfig&, const URL&, bool) const
Added: static bool CopyJobFile(const UserConfig&, const URL&, const URL&)
Added: static bool ListFilesRecursive(const UserConfig&, const URL&, std::list<std::string>&, const std::string& = "")
Added: static bool ReadJobsFromFile(const std::string&, std::list<Job>&, std::list<std::string>&, bool = false,
const std::list<std::string>& = std::list<std::string>(),
const std::list<std::string>& = std::list<std::string>(),
unsigned = 10, unsigned = 500000)
Added: std::string InterfaceName
Added: enum ResourceType:
STDIN, STDOUT, STDERR, STAGEINDIR, STAGEOUTDIR, SESSIONDIR, JOBLOG, JOBDESCRIPTION
* class ExecutionTarget:
Removed: void Print(bool) const
Removed: Submitter* GetSubmitter(const UserConfig&) const
Removed: bool GetTestJob(const UserConfig&, const int&, JobDescription&) const
Removed: bool Migrate(const UserConfig&, const URL&, const JobDescription&, bool, Job&) const
Removed: void Update(const JobDescription&)
Removed: std::string Address
Removed: std::string Place
Removed: std::string Country
Removed: std::string PostCode
Removed: float Latitude
Removed: float Longitude
Removed: std::string DomainName
Removed: std::string Owner
Removed: std::string ServiceName
Removed: std::string ServiceType
Removed: URL url
Removed: std::list<std::string> Capability
Removed: std::string Technology
Removed: std::string InterfaceName
Removed: std::list<std::string> InterfaceVersion
Removed: std::list<std::string> InterfaceExtension
Removed: std::list<std::string> SupportedProfile
Removed: std::string Implementor
Removed: Software Implementation
Removed: std::string QualityLevel
Removed: std::string HealthState
Removed: std::string HealthStateInfo
Removed: std::string ServingState
Removed: std::string IssuerCA
Removed: std::list<std::string> TrustedCA
Removed: Time DowntimeStarts
Removed: Time DowntimeEnds
Removed: std::string Staging
Removed: std::list<std::string> JobDescriptions
Removed: std::string ComputingShareName
Removed: std::string MappingQueue
Removed: Period MaxWallTime
Removed: Period MaxTotalWallTime
Removed: Period MinWallTime
Removed: Period DefaultWallTime
Removed: Period MaxCPUTime
Removed: Period MaxTotalCPUTime
Removed: Period MinCPUTime
Removed: Period DefaultCPUTime
Removed: int MaxTotalJobs
Removed: int MaxRunningJobs
Removed: int MaxWaitingJobs
Removed: int MaxPreLRMSWaitingJobs
Removed: int MaxUserRunningJobs
Removed: int MaxSlotsPerJob
Removed: int MaxStageInStreams
Removed: int MaxStageOutStreams
Removed: std::string SchedulingPolicy
Removed: int MaxMainMemory
Removed: int MaxVirtualMemory
Removed: int MaxDiskSpace
Removed: URL DefaultStorageService
Removed: bool Preemption
Removed: int TotalJobs
Removed: int RunningJobs
Removed: int LocalRunningJobs
Removed: int WaitingJobs
Removed: int LocalWaitingJobs
Removed: int SuspendedJobs
Removed: int LocalSuspendedJobs
Removed: int StagingJobs
Removed: int PreLRMSWaitingJobs
Removed: Period EstimatedAverageWaitingTime
Removed: Period EstimatedWorstWaitingTime
Removed: int FreeSlots
Removed: std::map<Period, int> FreeSlotsWithDuration
Removed: int UsedSlots
Removed: int RequestedSlots
Removed: std::string ReservationPolicy
Removed: std::string ManagerProductName
Removed: std::string ManagerProductVersion
Removed: bool Reservation
Removed: bool BulkSubmission
Removed: int TotalPhysicalCPUs
Removed: int TotalLogicalCPUs
Removed: int TotalSlots
Removed: bool Homogeneous
Removed: std::list<std::string> NetworkInfo
Removed: bool WorkingAreaShared
Removed: int WorkingAreaTotal
Removed: int WorkingAreaFree
Removed: Period WorkingAreaLifeTime
Removed: int CacheTotal
Removed: int CacheFree
Removed: std::map<std::string, double> Benchmarks
Removed: std::string Platform
Removed: bool VirtualMachine
Removed: std::string CPUVendor
Removed: std::string CPUModel
Removed: std::string CPUVersion
Removed: int CPUClockSpeed
Removed: int MainMemorySize
Removed: Software OperatingSystem
Removed: bool ConnectivityIn
Removed: bool ConnectivityOut
Removed: std::list<ApplicationEnvironment> ApplicationEnvironments
Removed: std::string GridFlavour
Removed: URL Cluster
Added: void RegisterJobSubmission(const JobDescription&) const
Added: static void GetExecutionTargets(const std::list<ComputingServiceType>&, std::list<ExecutionTarget>&)
Added: ExecutionTarget(const CountedPointer<LocationAttributes>&, const CountedPointer<AdminDomainAttributes>&,
const CountedPointer<ComputingServiceAttributes>&, const CountedPointer<ComputingEndpointAttributes>&,
const CountedPointer<ComputingShareAttributes>&, const CountedPointer<ComputingManagerAttributes>&,
const CountedPointer<ExecutionEnvironmentAttributes>&, const CountedPointer< std::map<std::string, double> >&,
const CountedPointer< std::list<ApplicationEnvironment> >&)
Added: CountedPointer<LocationAttributes> Location
Added: CountedPointer<AdminDomainAttributes> AdminDomain
Added: CountedPointer<ComputingServiceAttributes> ComputingService
Added: CountedPointer<ComputingEndpointAttributes> ComputingEndpoint
Added: CountedPointer<ComputingShareAttributes> ComputingShare
Added: CountedPointer<ComputingManagerAttributes> ComputingManager
Added: CountedPointer<ExecutionEnvironmentAttributes> ExecutionEnvironment
Added: CountedPointer< std::map<std::string, double> > Benchmarks
Added: CountedPointer< std::list<ApplicationEnvironment> > ApplicationEnvironments
* New class LocationAttributes:
LocationAttributes()
std::string Address
std::string Place
std::string Country
std::string PostCode
float Latitude
float Longitude
* New class AdminDomainAttributes:
std::string Name
std::string Owner
* New class ExecutionEnvironmentAttributes:
ExecutionEnvironmentAttributes()
std::string ID
std::string Platform
bool VirtualMachine
std::string CPUVendor
std::string CPUModel
std::string CPUVersion
int CPUClockSpeed
int MainMemorySize
Software OperatingSystem
bool ConnectivityIn
bool ConnectivityOut
* New class ComputingManagerAttributes:
ComputingManagerAttributes()
std::string ID
std::string ProductName
std::string ProductVersion
bool Reservation
bool BulkSubmission
int TotalPhysicalCPUs
int TotalLogicalCPUs
int TotalSlots
bool Homogeneous
std::list<std::string> NetworkInfo
bool WorkingAreaShared
int WorkingAreaTotal
int WorkingAreaFree
Period WorkingAreaLifeTime
int CacheTotal
int CacheFree
* New class ComputingShareAttributes:
ComputingShareAttributes()
std::string ID
std::string Name
std::string MappingQueue
Period MaxWallTime
Period MaxTotalWallTime
Period MinWallTime
Period DefaultWallTime
Period MaxCPUTime
Period MaxTotalCPUTime
Period MinCPUTime
Period DefaultCPUTime
int MaxTotalJobs
int MaxRunningJobs
int MaxWaitingJobs
int MaxPreLRMSWaitingJobs
int MaxUserRunningJobs
int MaxSlotsPerJob
int MaxStageInStreams
int MaxStageOutStreams
std::string SchedulingPolicy
int MaxMainMemory
int MaxVirtualMemory
int MaxDiskSpace
URL DefaultStorageService
bool Preemption
int TotalJobs
int RunningJobs
int LocalRunningJobs
int WaitingJobs
int LocalWaitingJobs
int SuspendedJobs
int LocalSuspendedJobs
int StagingJobs
int PreLRMSWaitingJobs
Period EstimatedAverageWaitingTime
Period EstimatedWorstWaitingTime
int FreeSlots
std::map<Period, int> FreeSlotsWithDuration
int UsedSlots
int RequestedSlots
std::string ReservationPolicy
* New class ComputingEndpointAttributes:
ComputingEndpointAttributes()
std::string ID
std::string URLString
std::string InterfaceName
std::string HealthState
std::string HealthStateInfo
std::string QualityLevel
std::list<std::string> Capability
std::string Technology
std::list<std::string> InterfaceVersion
std::list<std::string> InterfaceExtension
std::list<std::string> SupportedProfile
std::string Implementor
Software Implementation
std::string ServingState
std::string IssuerCA
std::list<std::string> TrustedCA
Time DowntimeStarts
Time DowntimeEnds
std::string Staging
int TotalJobs
int RunningJobs
int WaitingJobs
int StagingJobs
int SuspendedJobs
int PreLRMSWaitingJobs
std::list<std::string> JobDescriptions
* New class ComputingServiceAttributes:
ComputingServiceAttributes()
std::string ID
std::string Name
std::string Type
std::list<std::string> Capability
std::string QualityLevel
int TotalJobs
int RunningJobs
int WaitingJobs
int StagingJobs
int SuspendedJobs
int PreLRMSWaitingJobs
URL Cluster
Endpoint OriginalEndpoint
* New template<typename T> class GLUE2Entity:
GLUE2Entity()
T * operator->()
T const * const operator->() const
T & operator*()
T const & operator*() const
CountedPointer<T> Attributes
* New class LocationType : public GLUE2Entity<LocationAttributes>
* New class AdminDomainType : public GLUE2Entity<AdminDomainAttributes>
* New class ExecutionEnvironmentType : public GLUE2Entity<ExecutionEnvironmentAttributes>
* New class ComputingManagerType : public GLUE2Entity<ComputingManagerAttributes>:
ComputingManagerType()
std::map<int, ExecutionEnvironmentType> ExecutionEnvironment
CountedPointer< std::map<std::string, double> > Benchmarks
CountedPointer< std::list<ApplicationEnvironment> > ApplicationEnvironments
* New class ComputingShareType : public GLUE2Entity<ComputingShareAttributes>:
std::set<int> ComputingEndpointIDs
* New class ComputingEndpointType : public GLUE2Entity<ComputingEndpointAttributes>:
std::set<int> ComputingShareIDs
* New class ComputingServiceType : public GLUE2Entity<ComputingServiceAttributes>:
template<typename T> void GetExecutionTargets(T&) const
LocationType Location
AdminDomainType AdminDomain
std::map<int, ComputingEndpointType> ComputingEndpoint
std::map<int, ComputingShareType> ComputingShare
std::map<int, ComputingManagerType> ComputingManager
* class Software:
Added: const std::list<std::string>& getOptions() const
Added: void addOption(const std::string&)
* class SoftwareRequirement:
Changed: void add(const Software&, Software::ComparisonOperator = &Software::operator==)
void add(const Software&, Software::ComparisonOperator)
* class JobState:
Added: (protected) std::string state
Added: (protected) StateType type
* class GLUE2:
Changed static void ParseExecutionTargets(XMLNode, std::list<ExecutionTarget>&, const std::string& = "")
static void ParseExecutionTargets(XMLNode, std::list<ComputingServiceType>& targets)
* New class ComputingServiceRetriever:
ComputingServiceRetriever
void wait()
void addEndpoint(const Endpoint&)
void addEntity(const Endpoint&)
void addConsumer(EntityConsumer<ComputingServiceType>&)
void removeConsumer(const EntityConsumer<ComputingServiceType>&)
void GetExecutionTargets(std::list<ExecutionTarget>&)
* New class BrokerPluginTestACCControl:
static bool match
static bool less
* New class JobDescriptionParserTestACCControl:
static bool parseStatus
static bool unparseStatus
static std::list<JobDescription> parsedJobDescriptions
static std::string unparsedString
* New class JobControllerPluginTestACCControl:
static bool cleanStatus
static bool cancelStatus
static bool renewStatus
static bool resumeStatus
static bool getJobDescriptionStatus
static std::string getJobDescriptionString
static bool resourceExist
static URL resourceURL
static URL createURL
* New class SubmitterPluginTestACCControl:
static bool submitStatus
static bool migrateStatus
static bool modifyStatus
static Job submitJob
static Job migrateJob
* New class JobStateTEST:
JobStateTEST(JobState::StateType, const std::string& = "TestState")
* New class JobListRetrieverPluginTESTControl:
static float delay
static std::list<Job> jobs
static EndpointQueryingStatus status
* New class ServiceEndpointRetrieverPluginTESTControl:
static float delay
static EndpointQueryingStatus status
static std::list<Endpoint> endpoints
* New class TargetInformationRetrieverPluginTESTControl:
static float delay
static std::list<ComputingServiceType> targets
static EndpointQueryingStatus status
libarcloader
* Renamed class: LoadableModuleDesciption
LoadableModuleDescription
* class LoadableModuleDescription:
Added: operator bool()
Added: bool operator!()
Added: int use()
Added: int unuse()
Added: int usage()
* class Loader:
Removed: Loader(const Loader&)
Removed: Loader& operator=(const Loader&)
* class ModuleManager:
Changed: void unload(Glib::Module*)
(protected) void unload(Glib::Module*)
Changed: void unload(const std::string&)
(protected) void unload(const std::string&)
Changed: Glib::Module* load(const std::string&, bool = false)
Glib::Module* load(const std::string&, bool)
Added: void use(Glib::Module*)
Added: void unuse(Glib::Module*)
* class Plugin:
Removed: (protected) Plugin()
Removed: Plugin& operator=(const Plugin&)
Added: (protected) PluginsFactory* factory_
Added: (protected) Glib::Module* module_
Added: (protected) Plugin(PluginArgument*)
Added: (protected) Plugin(const Plugin&)
* class PluginsFactory:
Changed: void TryLoad(bool = true)
void TryLoad(bool)
libarcdata2
* class FileCache:
Changed: FileCache(const std::vector<std::string>&, const std::vector<std::string>&,
const std::vector<std::string>&, const std::string&, uid_t, gid_t, int = 100, int = 100)
FileCache(const std::vector<std::string>&, const std::vector<std::string>&,
const std::vector<std::string>&, const std::string&, uid_t, gid_t)
Removed: bool Copy(const std::string&, const std::string&, bool = false)
Changed: bool Start(const std::string&, bool&, bool&, bool = true )
bool Start(const std::string&, bool&, bool&, bool = true, bool = false)
Changed: bool Link(const std::string&, const std::string&, bool, bool )
bool Link(const std::string&, const std::string&, bool, bool, bool, bool&)
* class FileInfo:
Added: operator bool() const
Added: bool operator!() const
* class DataStatus:
enum DataStatusType:
Changed: SuccessCached = 38
SuccessCached = 39
Changed: GenericError = 39
GenericError = 40
Changed: UnknownError = 40
UnknownError = 41
Added: CreateDirectoryError = 38
Added: CreateDirectoryErrorRetryable = DataStatusRetryableBase+CreateDirectoryError
* class DataPoint:
Changed: (protected) std::list<std::string> valid_url_options
(protected) std::set<std::string> valid_url_options
Added: virtual DataStatus CreateDirectory(bool = false)
Added: virtual void AddURLOptions(const std::map<std::string, std::string>&)
Added: virtual DataStatus Stat(std::list<FileInfo>&, const std::list<DataPoint*>&, DataPointInfoType = INFO_TYPE_ALL) = 0
Added: virtual DataStatus Resolve(bool, const std::list<DataPoint*>&) = 0
Added: virtual DataPoint* CurrentLocationHandle() const = 0
Changed: (protected) DataPoint(const URL&, const UserConfig&)
(protected) DataPoint(const URL&, const UserConfig&, PluginArgument*)
* class DataPointDirect:
Added: virtual DataStatus Stat(std::list<FileInfo>&, const std::list<DataPoint*>&, DataPointInfoType = INFO_TYPE_ALL)
Added: virtual DataStatus Resolve(bool, const std::list<DataPoint*>&)
Added: virtual DataPoint* CurrentLocationHandle() const
Changed: (protected) DataPointDirect(const URL&, const UserConfig&)
(protected) DataPointDirect(const URL&, const UserConfig&, PluginArgument*)
* class DataPointIndex:
Added: virtual DataPoint* CurrentLocationHandle() const
Changed: (protected) DataPointIndex(const URL&, const UserConfig&)
(protected) DataPointIndex(const URL&, const UserConfig&, PluginArgument*)
* class DataHandle:
Added: static DataPoint* GetPoint(const URL&, const UserConfig&)
libarccredential
* class Credential:
Renamed: getFormat (BIO *, const bool = true) const
getFormat_BIO(BIO *, const bool = true) const
Added: Credformat getFormat_str(const std::string&) const
* New class AuthN::PrivateKeyInfoCodec
static const unsigned char kRsaAlgorithmIdentifier[]
static const unsigned char kIntegerTag = 0x02
static const unsigned char kBitStringTag = 0x03
static const unsigned char kOctetStringTag = 0x04
static const unsigned char kNullTag = 0x05
static const unsigned char kSequenceTag = 0x30
explicit PrivateKeyInfoCodec(bool)
bool Export(std::vector<unsigned char>*)
bool ExportPublicKeyInfo(std::vector<unsigned char>*);
bool ExportPublicKey(std::vector<unsigned char>*);
bool Import(const std::vector<unsigned char>&)
std::vector<unsigned char>* modulus()
std::vector<unsigned char>* public_exponent()
std::vector<unsigned char>* private_exponent()
std::vector<unsigned char>* prime1()
std::vector<unsigned char>* prime2()
std::vector<unsigned char>* exponent1()
std::vector<unsigned char>* exponent2()
std::vector<unsigned char>* coefficient()
* Functions:
Added: bool AuthN::nssInit(const std::string&)
Added: bool AuthN::nssExportCertificate(const std::string&, const std::string&)
Added: bool AuthN::nssOutputPKCS12(const std::string, char*, char*, char*)
Added: bool AuthN::nssGenerateCSR(const std::string&, const std::string&, const char*, const std::string&, std::string&, bool = true)
Added: bool AuthN::nssCreateCert(const std::string&, const std::string&, const char*, const int, std::string&, bool = true)
Added: bool AuthN::nssImportCertAndPrivateKey(char*, const std::string&, const std::string&, const std::string&,
const std::string&, const char* = NULL, bool = true)
Added: bool AuthN::nssImportCert(char*, const std::string&, const std::string&, const char* = NULL, bool = true)
Changed: bool parseVOMSAC(X509*, const std::string&, const std::string&,
VOMSTrustList&, std::vector<VOMSACInfo>&, bool = true, bool = false)
bool parseVOMSAC(X509*, const std::string&, const std::string&, const std::string&,
VOMSTrustList&, std::vector<VOMSACInfo>&, bool = true, bool = false)
Changed: bool parseVOMSAC(const Credential&, const std::string&, const std::string&,
VOMSTrustList&, std::vector<VOMSACInfo>&, bool = true, bool = false)
bool parseVOMSAC(const Credential&, const std::string&, const std::string&, const std::string&,
VOMSTrustList&, std::vector<VOMSACInfo>&, bool = true, bool = false)
Changed: std::string getCredentialProperty(const Credential&, const std::string&, const std::string& = "",
const std::string& = "", const std::vector<std::string>& = std::vector<std::string>())
std::string getCredentialProperty(const Credential&, const std::string&, const std::string& = "", const std::string& = "",
const std::string& = "", const std::vector<std::string>& = std::vector<std::string>());
libarcdelegation
* class Arc::DelegationContainerSOAP: Added: (protected) typedef std::map<std::string, Consumer> ConsumerMap Added: (protected) typedef ConsumerMap::iterator ConsumerIterator Added: (protected) ConsumerMap consumers_ Added: (protected) ConsumerIterator consumers_first_ Added: (protected) ConsumerIterator consumers_last_ Added: (protected) ConsumerIterator find(DelegationConsumerSOAP*) Added: (protected) bool remove(ConsumerIterator) Added: (protected) virtual DelegationConsumerSOAP* AddConsumer(std::string&, const std::string&) Added: (protected) virtual DelegationConsumerSOAP* FindConsumer(const std::string& id, const std::string& client); Added: (protected) virtual bool TouchConsumer(DelegationConsumerSOAP*, const std::string&) Added: (protected) virtual bool QueryConsumer(DelegationConsumerSOAP*, std::string&); Added: (protected) virtual void ReleaseConsumer(DelegationConsumerSOAP*) Added: (protected) virtual void RemoveConsumer(DelegationConsumerSOAP*) Added: (protected) virtual void CheckConsumers()
libarcsecurity
* class Evaluator:
Changed: Evaluator (XMLNode*)
Evaluator (XMLNode*, PluginArgument*)
Changed: Evaluator (const char *)
Evaluator (const char *, PluginArgument*)
* class Policy:
Changed: Policy()
Policy(PluginArgument*)
Changed: Policy(const XMLNode)
Policy(const XMLNode, PluginArgument*)
Changed: Policy(const XMLNode, EvaluatorContext*)
Policy(const XMLNode, EvaluatorContext*, PluginArgument*)
* class FnFactory:
Changed: FnFactory()
FnFactory(PluginArgument*)
* class AlgFactory:
Changed: AlgFactory()
AlgFactory(PluginArgument*)
* class AttributeFactory:
Changed: AttributeFactory()
AttributeFactory(PluginArgument*)
* class Request:
Changed: Request()
Request(PluginArgument*)
Changed: Request(const Source&)
Request(const Source&, PluginArgument*)
* class PDP:
Changed: PDP(Config*)
PDP(Config*, PluginArgument*)
libarcmessage
* class MCC:
Changed: MCC(Config *)
MCC(Config *, PluginArgument*)
* class MCCInterface:
Added: MCCInterface(PluginArgument*)
* class Plexer:
Changed: Plexer(Config *)
Plexer(Config *, PluginArgument*)
* class SecHandler:
Changed: SecHandler(Config*)
SecHandler(Config*, PluginArgument*)
* class Service:
Added: (protected) bool valid
Added: operator bool() const
Added: bool operator!() const
Changed: Service(Config*)
Service(Config*, PluginArgument*)
libarcinfosys
* class InfoRegisters:
Changed: InfoRegisters(XMLNode &, Service *)
InfoRegisters(XMLNode , Service *)
Added: bool addRegister(XMLNode, Service *)
* class RegisteredService:
Changed: RegisteredService(Config*)
RegisteredService(Config*, PluginArgument*)
libarcdatastaging
libarcdatastaging is a new library in ARC 2.0.0 using namespace DataStaging.