00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef _E164GW_H_
00031 #define _E164GW_H_
00032
00033
00034
00035
00036
00037
00038 #include "e164.h"
00039
00040
00041
00042 namespace OSB_DB {
00043 class Session;
00044 }
00045
00046
00047
00048 namespace OSB_DB {
00049
00050
00051
00052
00053
00054
00058 struct E164Gw {
00060 friend class OSB_LIB::E164;
00061
00072 long fetch(
00073 const Session& session,
00074 OSB_LIB::E164s& e164s
00075 );
00076
00089 bool fetch(
00090 const Session& session,
00091 OSB_LIB::E164& e164
00092 );
00093
00094 private:
00110 bool insE164(
00111 const Session& session,
00112 OSB_LIB::E164& e164
00113 );
00114
00133 bool delE164(
00134 const Session& session,
00135 OSB_LIB::E164& e164
00136 );
00137
00157 bool updE164(
00158 const Session& session,
00159 OSB_LIB::E164& e164
00160 );
00161
00175 OSB_LIB::ObjectStatus checkObjVs(
00176 const Session& session,
00177 const OSB_LIB::E164& e164
00178 );
00179
00194 OSB_LIB::CfgStatus getStatus(
00195 const Session& session,
00196 const OSB_LIB::E164::Oid& oid
00197 );
00198
00208 void updStatus(
00209 const Session& session,
00210 OSB_LIB::E164& e164
00211 );
00212
00226 bool bothDateInFuture(
00227 const Session& session,
00228 const OSB_LIB::E164::Oid& oid
00229 );
00230
00246 bool hasReleasedCp(
00247 const Session& session,
00248 const OSB_LIB::E164::Oid& oid
00249 );
00250
00262 bool noDateConflict(
00263 const Session& session,
00264 const OSB_LIB::E164::Oid& oid
00265 );
00266
00278 bool gracePeriodExpired(
00279 const Session& session,
00280 const OSB_LIB::E164::Oid& oid
00281 );
00282
00295 bool hasOverlapE164(
00296 const Session& session,
00297 const OSB_LIB::E164::Oid& oid
00298 );
00299 };
00300
00301
00302
00303
00304 }
00305 #endif // #ifndef _E164GW_H_