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 _PERSDEVICE_I_H_
00031 #define _PERSDEVICE_I_H_
00032
00033
00034
00035
00036
00037
00038
00039
00040 #include "deviceC.h"
00041 #include "persdeviceS.h"
00042 #include "persproditem_i.h"
00043
00044
00045 namespace OSB_LIB {
00046 class PersDevice;
00047 class PersUimCard;
00048 }
00049
00050
00051
00052 namespace OSB_CORBA {
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062 class PersDevice_i :
00063 public virtual POA_corba::cadmin::persproditem::PersDevice,
00064 public virtual PersProdItemWriter_i
00065 {
00066 protected:
00068 PersDevice_i (
00069 ContractAdmin_i& cadmin,
00070 PersProductWriter_i& ppServant,
00071 const OSB_LIB::ProductNode* pn,
00072 std::auto_ptr<OSB_LIB::PersProductItem> ppi
00073 );
00074
00075 public:
00076
00077 corba::dvc::DeviceId dvcId()
00078 throw (OsbCorbaException);
00079
00080 private:
00081
00082 OSB_LIB::PersDevice* persDevice()
00083 throw (OsbCorbaException);
00084 };
00085
00086 class PersUimCardWriter_i :
00087 public POA_corba::cadmin::persproditem::PersUimCardWriter,
00088 public PersDevice_i
00089 {
00090 public:
00091 PersUimCardWriter_i (
00092 ContractAdmin_i& cadmin,
00093 PersProductWriter_i& ppServant,
00094 const OSB_LIB::ProductNode* pn,
00095 std::auto_ptr<OSB_LIB::PersProductItem> ppi
00096 ) throw (OsbCorbaException);
00097
00098
00099 void checkConfig()
00100 throw (OsbCorbaException);
00101
00102 corba::dvc::UimCard_ptr uimCard()
00103 throw (OsbCorbaException);
00104 void setUimCard(
00105 const corba::common::Utf8String& uimId
00106 ) throw (OsbCorbaException);
00107
00108 private:
00109 OSB_LIB::PersUimCard* persUimCard()
00110 throw (OsbCorbaException);
00111 };
00112
00113 }
00114
00115
00116
00117 namespace OSB_CORBA {
00118 }
00119 #endif // #ifndef _PERSDEVICE_I_H_