00001 // OSB library ********************************************* -*- IDL -*- 00006 /* 00007 AUTHOR(S): Elangovan Angannan (aen) 00008 00009 RCS information 00010 $Name: OSB_060808 $ 00011 $Revision: 1.13.2.1 $ 00012 00013 License 00014 OSB rating and billing library for communication networks 00015 Copyright (C) 2004, 2005, 2006 OSB systems 00016 00017 This file may be distributed and/or modify under the terms of the 00018 GNU General Public License (GPL) as published by the Free Software 00019 Foundation which is provided in the file LICENSE.GPL included in the 00020 packaging of this file. 00021 00022 The file is distributed in the hope that it will be useful, but WITHOUT 00023 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00024 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00025 for more details. 00026 00027 Holders of a OSB Commercial License may use this file under the terms 00028 and conditions of this commercial license. 00029 */ 00030 #ifndef _OSBUSER_IDL_ 00031 #define _OSBUSER_IDL_ 00032 00033 // ************************************************************************ 00034 // included idl files 00035 #include "corba_utility.idl" 00036 #include "osbmodule.idl" 00037 #include "osbusrgrp.idl" 00038 00039 // ************************************************************************ 00040 // module extensions 00041 module corba { 00042 module osbadm { 00043 00044 // forward declarations 00045 interface UserWriter; 00046 00047 // ********************************************************************* 00048 // type definitions 00049 00051 struct UserId { 00052 long id; 00053 }; 00054 00055 // ********************************************************************* 00056 // interface definitions 00062 interface User { 00069 UserId id() 00070 raises (common::OsbCorbaException); 00071 00073 common::Utf8String loginName() 00074 raises (common::OsbCorbaException); 00075 00084 common::Utf8String name() 00085 raises (common::OsbCorbaException); 00086 00088 common::Utf8String email() 00089 raises (common::OsbCorbaException); 00090 00092 00093 00094 ModuleId defModule() 00095 raises (common::OsbCorbaException); 00097 ModuleIdSeq availModules() 00098 raises (common::OsbCorbaException); 00107 UserGroupId userGroup(in ModuleId modId) 00108 raises (common::OsbCorbaException); 00110 boolean isAvailable(in ModuleId id) 00111 raises (common::OsbCorbaException); 00113 00119 UserWriter getWriter() 00120 raises (common::OsbCorbaException); 00121 }; // interface User 00122 00126 interface UserWriter : User { 00134 void changePassword( 00135 in common::Utf8String oldPw, 00136 in common::Utf8String newPw 00137 ) raises (common::OsbCorbaException); 00138 00144 void resetPassword( 00145 in common::Utf8String newPw 00146 ) raises (common::OsbCorbaException); 00147 00153 void setName(in common::Utf8String name) 00154 raises (common::OsbCorbaException); 00155 00161 void setEmail(in common::Utf8String email) 00162 raises (common::OsbCorbaException); 00163 00173 void setGrants(in UserGroupIdSeq grps) 00174 raises (common::OsbCorbaException); 00175 00185 boolean setDefModule(in ModuleId defMod) 00186 raises (common::OsbCorbaException); 00187 00196 void revoke(in ModuleId modId) 00197 raises (common::OsbCorbaException); 00198 00205 void commitChanges(in boolean noWait) 00206 raises (common::OsbCorbaException); 00207 }; // UserWriter 00208 }; // module osbadm 00209 }; // module corba 00210 #endif // #ifndef _OSBUSER_IDL_
1.4.7