Definition at line 1261 of file filter.h.
typedef std::pair<FilterExpr,FilterAction> OSB_LIB::FilterVersion::FeFaPair |
typedef std::vector<FeFaPair> OSB_LIB::FilterVersion::FExprs |
typedef Id2<FilterVersion> OSB_LIB::FilterVersion::Oid |
Constructor with object id and name.
This will be used as an default constructor as well as with object id and name to construct the filter version object.
oid | Object identifier to identify the filter version. | |
name | Name of the object. |
void OSB_LIB::FilterVersion::addFExpr | ( | const FilterExpr::Oid & | oid, | |
FilterAction | fa | |||
) |
Add new filter expression.
This will add the filter expression to this filter version.
oid | Unique object identifier for the filter expression. | |
fa | filteraction to be performed. |
void OSB_LIB::FilterVersion::build | ( | ) | [private] |
Build all filter expressions for this object.
If their is any change on any filter expression or filter condition this will get called to re buils the local objects again.
FilterAction OSB_LIB::FilterVersion::eval | ( | Cdr & | cdr, | |
UsedService & | us | |||
) |
Evaluation of UsedService.
This will evaluate the given Cdr and UsedService with the configured filter expression and returns the filter action to be performed.
cdr | Cdr object to use. | |
us | UsedService object to use. |
const FExprs& OSB_LIB::FilterVersion::filterExprs | ( | ) | const |
Return the vector of filter expression and filter action pair.
bool OSB_LIB::FilterVersion::freeze | ( | const OSB_DB::Session & | session, | |
std::vector< OsbError > & | errors | |||
) | [private] |
Set the status from editable to standby.
In order to set the status from editable to standby, the following criteria must be fulfilled:
session | Database session to use. | |
errors | Container of error messages if any. |
OsbException | for any database errors. |
bool OSB_LIB::FilterVersion::insert | ( | const OSB_DB::Session & | session | ) | [private] |
Insert the filter version object into the database.
This will insert the filter version object into the database using filter version gateway. The object version and filter version will be assigned after the insertion.
session | Database session to use. |
Exception | for the following errors:
|
const std::string& OSB_LIB::FilterVersion::name | ( | ) | const |
Return the name of this filter version object.
long OSB_LIB::FilterVersion::objVs | ( | ) | const |
Return the object version of the filter version object.
const Oid& OSB_LIB::FilterVersion::oid | ( | ) | const |
Return the unique object id of the filter version object.
void OSB_LIB::FilterVersion::print | ( | ) |
This is for debugging purpose.
bool OSB_LIB::FilterVersion::read | ( | const OSB_DB::Session & | session | ) |
Read the filter version object from database.
This will read the filter version object from the database using filter version gateway. The filter id and filter version are used to identify the object in the database.
session | Database session to use. |
Exception | if object not found. |
bool OSB_LIB::FilterVersion::release | ( | const OSB_DB::Session & | session, | |
std::vector< OsbError > & | errors | |||
) | [private] |
Set the status from standby to release.
In order to set the status from standby to release, the following criteria must be fulfilled:
session | Database session to use. | |
errors | Container of error messages if any. |
OsbException | for the following errors:
|
const Date& OSB_LIB::FilterVersion::releaseDate | ( | ) | const |
Return the release date of this filter version object.
bool OSB_LIB::FilterVersion::remove | ( | const OSB_DB::Session & | session | ) | [private] |
Remove the filter version object from database.
This will remove the filter version object from the database using filter version gateway. Filter id and filter version are used to identify the filter version object for deletion.
session | Database session to use. |
Exception | for the following error:
|
void OSB_LIB::FilterVersion::removeFExpr | ( | const FilterExpr::Oid & | oid | ) |
Remove the filter expression.
This will remove the filter expression from this filter version object.
oid | Unique object identifier for the filter expression. |
bool OSB_LIB::FilterVersion::revoke | ( | const OSB_DB::Session & | session, | |
std::vector< OsbError > & | errors | |||
) | [private] |
Set the status from release to standby.
In order to get the status from release to standby, the following criteria must be fulfilled:
session | Database session to use. | |
errors | Container of error messages is any. |
OsbException | for any database errors. |
bool OSB_LIB::FilterVersion::setName | ( | const std::string & | name | ) |
Set the name of the filter version object.
name | Name of the filter version object. |
Exception | for the following errors:
|
bool OSB_LIB::FilterVersion::setReleaseDate | ( | const Date & | date | ) |
Set the release date for the filter version object.
date | Release date to be set. |
Exception | if Object has been released. |
CfgStatus OSB_LIB::FilterVersion::status | ( | ) | const |
Return the status of this filter version object.
bool OSB_LIB::FilterVersion::unfreeze | ( | const OSB_DB::Session & | session, | |
std::vector< OsbError > & | errors | |||
) | [private] |
Set the status from standby to editable.
In order to get the status from standby to editable, the following criteria must be fulfilled:
session | Database session to use. | |
errors | Container of error messages is any. |
OsbException | for any database errors. |
bool OSB_LIB::FilterVersion::update | ( | const OSB_DB::Session & | session | ) | [private] |
Update the filter version object in database.
This will update the filter version object into the database with the current values using filter version gateway. Filter id, filter version and object version are used to identify the filter version object for updation. After updation the object version will be increased by 1.
session | Database session to use. |
Exception | for the following error:
|
friend class FilterManager [friend] |
friend struct OSB_DB::FilterVersionGw [friend] |
FExprs OSB_LIB::FilterVersion::fexprs_ [private] |
std::string OSB_LIB::FilterVersion::name_ [private] |
long OSB_LIB::FilterVersion::objVs_ [private] |
Oid OSB_LIB::FilterVersion::oid_ [private] |
Date OSB_LIB::FilterVersion::releaseDate_ [private] |
CfgStatus OSB_LIB::FilterVersion::status_ [private] |