#include <rmdb.h>

Definition at line 324 of file rmdb.h.
Public Attributes | |
| Int32_t | diskSubsysKey |
| rm_String | diskSubsysName |
| rm_String | host |
| Int32_t | diskSubsysType |
| Int32_t | status |
Private Member Functions | |
| void | Insert () |
| void | Update () |
| void | Remove (Int32_t a_diskSubsysKey) |
| void | Select (Int32_t a_diskSubsysKey) |
| void | SelectByName (rm_String a_name) |
| void | StartSelectAll () |
| void | EndSelectAll () |
| rm_DiskSubsys & | Next () |
| rm_DiskSubsys () | |
| rm_DiskSubsys (Int32_t a_diskSubsysKey) | |
| bool | operator== (const rm_DiskSubsys &dss2) const |
Private Attributes | |
| log_CLASSID_m | |
Friends | |
| class | rm_Operator |
| rm_DiskSubsys::rm_DiskSubsys | ( | ) | [private] |
Definition at line 1928 of file librmdb.exx.
01929 : diskSubsysName(rmdb_MAX_DSSNAME), 01930 host(rmdb_MAX_HOSTNAME) { 01931 }
| rm_DiskSubsys::rm_DiskSubsys | ( | Int32_t | a_diskSubsysKey | ) | [private] |
Definition at line 1933 of file librmdb.exx.
References Select().
01934 : diskSubsysName(rmdb_MAX_DSSNAME), 01935 host(rmdb_MAX_HOSTNAME) { 01936 Select(a_diskSubsysKey); 01937 }

| void rm_DiskSubsys::Insert | ( | ) | [private] |
Definition at line 1940 of file librmdb.exx.
References rm_String::cvalue_p, dbg_NORM, diskSubsysKey, diskSubsysName, diskSubsysType, errorDesc(), host, log_DBG_m, log_FUNC_m, MAX, NAME, SQL_CHECK_M, SQL_NOERROR, SQL_UNIQUEVIOLATION, and status.
Referenced by rm_Operator::Add().
01940 { 01941 01942 log_FUNC_m(Insert); 01943 01944 EXEC SQL 01945 SET TRANSACTION NAME readWriteTrans; 01946 01947 Int32_t k(0); 01948 if (diskSubsysKey == 0) { 01949 EXEC SQL 01950 SELECT TRANSACTION readWriteTrans 01951 MAX(DISKSUBSYSKEY) INTO :k FROM DISKSUBSYS; 01952 01953 diskSubsysKey = k + 1; 01954 log_DBG_m(dbg_NORM,"new key"); 01955 } 01956 else { 01957 EXEC SQL 01958 SELECT TRANSACTION readWriteTrans 01959 DISKSUBSYSKEY INTO :k FROM DISKSUBSYS 01960 WHERE DISKSUBSYSKEY = :diskSubsysKey; 01961 01962 if (SQLCODE == SQL_NOERROR) { 01963 log_DBG_m(dbg_NORM,"key exists"); 01964 throw ivd_DBException( SQL_UNIQUEVIOLATION ,"DiskSubsys Key already exists"); 01965 } 01966 } 01967 01968 EXEC SQL 01969 INSERT TRANSACTION readWriteTrans 01970 INTO DiskSubsys VALUES( 01971 :diskSubsysKey, 01972 :diskSubsysName.cvalue_p, 01973 :host.cvalue_p, 01974 :diskSubsysType, 01975 :status 01976 ); 01977 string sqlErrDesc = errorDesc(SQLCODE,"Insert record into DSS",diskSubsysKey); 01978 SQL_CHECK_M( sqlErrDesc ); 01979 01980 }// rm_DiskSubsys::Insert()


| void rm_DiskSubsys::Update | ( | ) | [private] |
Definition at line 2002 of file librmdb.exx.
References rm_String::cvalue_p, diskSubsysKey, diskSubsysName, diskSubsysType, errorDesc(), host, log_FUNC_m, NAME, SQL_CHECK_M, and status.
Referenced by rm_Operator::Update().
02002 { 02003 log_FUNC_m(Update); 02004 02005 EXEC SQL 02006 SET TRANSACTION NAME readWriteTrans; 02007 02008 EXEC SQL 02009 UPDATE TRANSACTION readWriteTrans 02010 DISKSUBSYS SET 02011 DISKSUBSYSNAME = :diskSubsysName.cvalue_p, 02012 HOST = :host.cvalue_p, 02013 DISKSUBSYSTYPE = :diskSubsysType, 02014 STATUS = :status 02015 WHERE DISKSUBSYSKEY = :diskSubsysKey; 02016 02017 string sqlErrDesc = errorDesc(SQLCODE,"Update DSS record", diskSubsysKey); 02018 SQL_CHECK_M( sqlErrDesc ); 02019 }// rm_DiskSubsys::Update()


| void rm_DiskSubsys::Remove | ( | Int32_t | a_diskSubsysKey | ) | [private] |
Definition at line 1984 of file librmdb.exx.
References errorDesc(), log_FUNC_m, NAME, and SQL_CHECK_M.
Referenced by rm_Operator::RemoveDSS().
01984 { 01985 log_FUNC_m(Remove); 01986 01987 EXEC SQL 01988 SET TRANSACTION NAME readWriteTrans; 01989 01990 EXEC SQL 01991 DELETE TRANSACTION readWriteTrans 01992 FROM DISKSUBSYS 01993 WHERE DISKSUBSYSKEY = :a_diskSubsysKey; 01994 01995 string sqlErrDesc = errorDesc(SQLCODE,"Remove DSS record",a_diskSubsysKey); 01996 SQL_CHECK_M( sqlErrDesc ); 01997 }// rm_DiskSubsys::Remove


| void rm_DiskSubsys::Select | ( | Int32_t | a_diskSubsysKey | ) | [private] |
Definition at line 2024 of file librmdb.exx.
References diskSubsysKey, diskSubsysName, diskSubsysType, errorDesc(), host, log_FUNC_m, NAME, rmdb_MAX_DSSNAME, rmdb_MAX_HOSTNAME, SQL_CHECKREAD_M, SQL_NOERROR, and status.
Referenced by rm_DiskSubsys().
02024 { 02025 log_FUNC_m(Select); 02026 02027 EXEC SQL 02028 SET TRANSACTION NAME readTrans 02029 READ ONLY 02030 ISOLATION LEVEL READ COMMITTED; 02031 02032 char diskSubsysNameVal[rmdb_MAX_DSSNAME]; 02033 char hostVal[rmdb_MAX_HOSTNAME]; 02034 02035 EXEC SQL 02036 SELECT TRANSACTION readTrans 02037 * INTO 02038 :diskSubsysKey, 02039 :diskSubsysNameVal, 02040 :hostVal, 02041 :diskSubsysType, 02042 :status 02043 FROM DISKSUBSYS WHERE DISKSUBSYSKEY = :a_diskSubsysKey; 02044 02045 if (SQLCODE == SQL_NOERROR) { 02046 diskSubsysName = diskSubsysNameVal; 02047 host = hostVal; 02048 }; 02049 02050 string sqlErrDesc = errorDesc(SQLCODE,"Select DSS record", diskSubsysKey); 02051 SQL_CHECKREAD_M( sqlErrDesc ); 02052 02053 }// rm_DiskSubsys::Select


| void rm_DiskSubsys::SelectByName | ( | rm_String | a_name | ) | [private] |
Definition at line 2057 of file librmdb.exx.
References rm_String::cvalue_p, diskSubsysKey, diskSubsysName, diskSubsysType, errorDesc(), host, log_FUNC_m, NAME, rmdb_MAX_DSSNAME, rmdb_MAX_HOSTNAME, SQL_CHECKREAD_M, SQL_NOERROR, and status.
Referenced by rm_Operator::Add(), rm_Operator::RemoveDSS(), and rm_Operator::Update().
02057 { 02058 log_FUNC_m(SelectByName); 02059 02060 EXEC SQL 02061 SET TRANSACTION NAME readTrans 02062 READ ONLY 02063 ISOLATION LEVEL READ COMMITTED; 02064 02065 char diskSubsysNameVal[rmdb_MAX_DSSNAME]; 02066 char hostVal[rmdb_MAX_HOSTNAME]; 02067 02068 EXEC SQL 02069 SELECT TRANSACTION readTrans 02070 * INTO 02071 :diskSubsysKey, 02072 :diskSubsysNameVal, 02073 :hostVal, 02074 :diskSubsysType, 02075 :status 02076 FROM DISKSUBSYS 02077 WHERE DISKSUBSYSNAME = :a_name.cvalue_p; 02078 02079 if (SQLCODE == SQL_NOERROR) { 02080 diskSubsysName = diskSubsysNameVal; 02081 host = hostVal; 02082 }; 02083 02084 string sqlErrDesc = errorDesc(SQLCODE, "Selecting DiskSubsys record by Name"); 02085 SQL_CHECKREAD_M( sqlErrDesc ); 02086 }


| void rm_DiskSubsys::StartSelectAll | ( | ) | [private] |
Definition at line 2089 of file librmdb.exx.
References errorDesc(), cmn_Mutex::Lock(), log_ERR_m, log_FUNC_m, NAME, SQL_NOERROR, and cmn_Mutex::Unlock().
02089 { 02090 log_FUNC_m(StartSelectAll); 02091 02092 g_dssCursor_x.Lock(); 02093 EXEC SQL 02094 SET TRANSACTION NAME readTrans 02095 READ ONLY 02096 ISOLATION LEVEL READ COMMITTED; 02097 EXEC SQL 02098 OPEN TRANSACTION readTrans SELECT_ALL_DSS; 02099 02100 if ( SQLCODE != SQL_NOERROR ) { 02101 string sqlErrDesc = errorDesc(SQLCODE, "Opening SELECT_ALL_DSS Cursor failed"); 02102 log_ERR_m(sqlErrDesc); 02103 g_dssCursor_x.Unlock(); 02104 throw ivd_DBException( SQLCODE ,sqlErrDesc, true); 02105 } 02106 }

| void rm_DiskSubsys::EndSelectAll | ( | ) | [private] |
Definition at line 2108 of file librmdb.exx.
References errorDesc(), log_FUNC_m, SQL_CHECKREAD_M, and cmn_Mutex::Unlock().
02108 { 02109 log_FUNC_m(EndSelectAll); 02110 02111 EXEC SQL 02112 CLOSE SELECT_ALL_DSS; 02113 02114 g_dssCursor_x.Unlock(); 02115 02116 string sqlErrDesc = errorDesc(SQLCODE,"CLOSE SELECT_ALL_DSS"); 02117 SQL_CHECKREAD_M(sqlErrDesc); 02118 }

| rm_DiskSubsys & rm_DiskSubsys::Next | ( | ) | [private] |
Definition at line 2120 of file librmdb.exx.
References diskSubsysKey, diskSubsysName, diskSubsysType, errorDesc(), host, log_FUNC_m, rmdb_MAX_DSSNAME, rmdb_MAX_HOSTNAME, SQL_CHECKREAD_M, SQL_NOERROR, status, and cmn_Mutex::Unlock().
02120 { 02121 log_FUNC_m(Next); 02122 02123 char diskSubsysNameVal[rmdb_MAX_DSSNAME]; 02124 char hostVal[rmdb_MAX_HOSTNAME]; 02125 EXEC SQL 02126 FETCH SELECT_ALL_DSS 02127 INTO 02128 :diskSubsysKey, 02129 :diskSubsysNameVal, 02130 :hostVal, 02131 :diskSubsysType, 02132 :status; 02133 02134 if (SQLCODE == SQL_NOERROR) { 02135 diskSubsysName = diskSubsysNameVal; 02136 host = hostVal; 02137 } 02138 else { 02139 int fetchCode = SQLCODE; 02140 EXEC SQL 02141 CLOSE SELECT_ALL_DSS; 02142 g_dssCursor_x.Unlock(); 02143 SQLCODE = fetchCode; 02144 string sqlErrDesc = errorDesc(fetchCode,"CLOSE SELECT_ALL_DSS"); 02145 SQL_CHECKREAD_M(sqlErrDesc); 02146 02147 }; 02148 return *this; 02149 }

| bool rm_DiskSubsys::operator== | ( | const rm_DiskSubsys & | dss2 | ) | const [inline, private] |
Definition at line 349 of file rmdb.h.
References diskSubsysKey, diskSubsysName, diskSubsysType, and host.
00349 { 00350 return ( ( diskSubsysKey == dss2.diskSubsysKey) && 00351 ( diskSubsysType == dss2.diskSubsysType) && 00352 ( host == dss2.host) && 00353 ( diskSubsysName == dss2.diskSubsysName) ); 00354 };
friend class rm_Operator [friend] |
Definition at line 328 of file rmdb.h.
Referenced by rm_Operator::Add(), Insert(), Next(), operator==(), rm_Operator::RemoveDSS(), Select(), SelectByName(), rm_Operator::Update(), and Update().
Definition at line 329 of file rmdb.h.
Referenced by rm_Operator::Add(), rm_Operator::AutoDetect(), Insert(), Next(), operator==(), Select(), rm_Operator::SelectAllMediaByPart(), rm_Operator::SelectAllMedium(), SelectByName(), rm_Operator::SelectMedium(), rm_Operator::SelectMediumByDrive(), rm_Operator::Update(), and Update().
Definition at line 330 of file rmdb.h.
Referenced by rm_Operator::Add(), Insert(), Next(), operator==(), Select(), SelectByName(), rm_Operator::Update(), and Update().
Definition at line 331 of file rmdb.h.
Referenced by rm_Operator::Add(), Insert(), Next(), operator==(), Select(), SelectByName(), rm_Operator::Update(), and Update().
Definition at line 332 of file rmdb.h.
Referenced by rm_Operator::Add(), rm_Operator::AutoDetect(), Insert(), Next(), rm_Operator::RemoveDSS(), Select(), SelectByName(), rm_Operator::Update(), and Update().
rm_DiskSubsys::log_CLASSID_m [private] |
1.5.6