LSSTApplications  19.0.0-14-gb0260a2+d60062ef16,20.0.0+1540ce6389,20.0.0+7c6b12c2f9,20.0.0+ae956f52c5,20.0.0+be870186d9,20.0.0+e2e26847c2,20.0.0-1-g10df615+7683e4f082,20.0.0-1-g253301a+7c6b12c2f9,20.0.0-1-g2b7511a+46a6078777,20.0.0-1-g3dda6ea+606b36f8c0,20.0.0-1-g4d801e7+901ee84527,20.0.0-1-g5b95a8c+a5fa15ec54,20.0.0-1-gb058bd0+46a6078777,20.0.0-1-gb88604f+acecce4127,20.0.0-1-gc96f8cb+61a4a056b1,20.0.0-1-gedffbd8+4f0e391d5e,20.0.0-10-g0891cd99+aadc987f3e,20.0.0-10-g9a20bd332+576ca7b471,20.0.0-17-gcdbda88+ed0d4927ab,20.0.0-2-g4dae9ad+61a4a056b1,20.0.0-2-g61b8584+85c46248f3,20.0.0-2-gb780d76+f45b7d88f4,20.0.0-2-gf072044+7c6b12c2f9,20.0.0-21-g9bbb7f7+61a4a056b1,20.0.0-22-gc512666+9eba1c4719,20.0.0-23-g8900aa8+68630f7098,20.0.0-3-g1653f94+85c46248f3,20.0.0-3-g4cc78c6+63636aeed8,20.0.0-3-g750bffe+e05f822de9,20.0.0-3-gbd60e8c+ff10c6d78d,20.0.0-32-g15a0e07c+ff1c9f120b,20.0.0-4-g97dc21a+68630f7098,20.0.0-4-gfea843c+f45b7d88f4,20.0.0-5-g357b56b+f45b7d88f4,20.0.0-6-g9a5b7a1+2c4171520d,20.0.0-61-g4de25fb+e4dd172200,20.0.0-7-gcda7bf1+85e953d7e4,w.2020.43
LSSTDataManagementBasePackage
Public Types | Public Member Functions | Static Public Attributes | List of all members
lsst.pex::policy::PolicyParserFactory Class Referenceabstract

an abstract factory class for creating PolicyParser instances. More...

#include <PolicyParserFactory.h>

Inheritance diagram for lsst.pex::policy::PolicyParserFactory:
lsst.pex::policy::paf::PAFParserFactory

Public Types

typedef std::shared_ptr< PolicyParserFactoryPtr
 

Public Member Functions

 PolicyParserFactory ()
 create a factory More...
 
virtual ~PolicyParserFactory ()
 destroy this factory More...
 
virtual PolicyParsercreateParser (Policy &policy, bool strict=true) const =0
 create a new PolicyParser class and return a pointer to it. More...
 
virtual bool isRecognized (const std::string &leaders) const =0
 analyze the given string assuming contains the leading characters from the data stream and return true if it is recognized as being in the format supported by this parser. More...
 
virtual const std::stringgetFormatName ()
 return the name for the format supported by the parser More...
 

Static Public Attributes

static const std::string UNRECOGNIZED
 an empty string representing an unrecognized format More...
 

Detailed Description

an abstract factory class for creating PolicyParser instances.

This class is used by the PolicySource class to determine the format of a stream of serialized Policy data and then parse it into a Policy instance. It is intended that for supported each format there is an implementation of this class and a corresponding PolicyParser class.

Definition at line 57 of file PolicyParserFactory.h.

Member Typedef Documentation

◆ Ptr

Definition at line 59 of file PolicyParserFactory.h.

Constructor & Destructor Documentation

◆ PolicyParserFactory()

lsst.pex::policy::PolicyParserFactory::PolicyParserFactory ( )
inline

create a factory

Definition at line 64 of file PolicyParserFactory.h.

64 {}

◆ ~PolicyParserFactory()

lsst.pex::policy::PolicyParserFactory::~PolicyParserFactory ( )
virtual

destroy this factory

Definition at line 45 of file PolicyParserFactory.cc.

45 {}

Member Function Documentation

◆ createParser()

virtual PolicyParser* lsst.pex::policy::PolicyParserFactory::createParser ( Policy policy,
bool  strict = true 
) const
pure virtual

create a new PolicyParser class and return a pointer to it.

The caller is responsible for destroying the pointer.

Parameters
policythe Policy object that data should be loaded into.
strictif true, be strict in reporting errors in file contents and syntax. If false, errors will be ignored if possible; often, such errors will result in some data not getting loaded. The default is true.

Implemented in lsst.pex::policy::paf::PAFParserFactory.

◆ getFormatName()

const std::string & lsst.pex::policy::PolicyParserFactory::getFormatName ( )
virtual

return the name for the format supported by the parser

Reimplemented in lsst.pex::policy::paf::PAFParserFactory.

Definition at line 50 of file PolicyParserFactory.cc.

50 { return UNRECOGNIZED; }

◆ isRecognized()

virtual bool lsst.pex::policy::PolicyParserFactory::isRecognized ( const std::string leaders) const
pure virtual

analyze the given string assuming contains the leading characters from the data stream and return true if it is recognized as being in the format supported by this parser.

If it is, return the name of the this format;

Implemented in lsst.pex::policy::paf::PAFParserFactory.

Member Data Documentation

◆ UNRECOGNIZED

const std::string lsst.pex::policy::PolicyParserFactory::UNRECOGNIZED
static

an empty string representing an unrecognized format

Definition at line 101 of file PolicyParserFactory.h.


The documentation for this class was generated from the following files:
lsst.pex::policy::PolicyParserFactory::UNRECOGNIZED
static const std::string UNRECOGNIZED
an empty string representing an unrecognized format
Definition: PolicyParserFactory.h:101