NicAccess.idl

Go to the documentation of this file.
00001 #ifndef __net_juniper_smgt_gateway_nic_NicAccess__
00002 #define __net_juniper_smgt_gateway_nic_NicAccess__
00003 
00052 
00053 module net {
00055 module juniper {
00057 module smgt {
00059 module gateway {
00061 module nic{
00063 module protocol {
00064 
00071     const string LOCATOR_FEATURE_TYPE = "NicLocator";
00072 
00078     const string ALL_FEATURE_TYPES = "ALL";
00079     
00081     typedef sequence<string> StringSeq;
00082 
00087     exception FeatureNotFound {
00088         wstring message; 
00089     };
00090 
00095     exception NICException {
00096         unsigned long errorCode; 
00097         wstring message; 
00098     };
00099 
00101     typedef sequence<wstring> WStringSeq;
00102 
00106     struct Attr {
00107         string name; 
00108         WStringSeq values;  
00109     };
00110 
00112     typedef sequence<Attr> AttrSeq;
00113 
00119     struct NICExceptionInfo {
00120         unsigned long errorCode; 
00121         wstring message; 
00122     };
00123 
00128     interface NicFeature {
00134         string getFeatureType();
00135     };
00136 
00141     struct NicLocatorKey{
00142         
00143         wstring key;  
00144 
00145         AttrSeq constraints; 
00146         
00147         AttrSeq extraInfo; 
00148     };
00149 
00153     struct NicLocatorValue{
00154         
00155         wstring value; 
00156 
00157         AttrSeq interimValues; 
00158        
00159         AttrSeq extraInfo;  
00160     };
00161 
00163     typedef sequence<NicLocatorValue> NicLocatorValueSeq;
00164 
00172     struct NicLocatorResult{
00173         NicLocatorKey key; 
00174 
00175         NICExceptionInfo failureCause; 
00176         NicLocatorValueSeq value; 
00177     };
00178 
00180     typedef sequence<NicLocatorResult> NicLocatorResultSeq;
00181 
00183     typedef sequence<NicLocatorKey> NicLocatorKeySeq;
00184 
00186     typedef sequence<NicLocatorValueSeq> NicLocatorValueSeqSeq;
00187 
00188 
00193     interface NicLocatorFeature: NicFeature{
00194  
00222          AttrSeq getLocatorInfo();
00223 
00224 
00248         NicLocatorValue lookupSingle(in NicLocatorKey key) raises (NICException);
00249         
00250         
00272         NicLocatorValueSeq lookup(in NicLocatorKey key) raises (NICException);
00273 
00274 
00294         NicLocatorResultSeq lookupBulk(in NicLocatorKeySeq keys) 
00295                 raises (NICException);
00296     }; 
00297 
00301     interface NicAccess{
00302         
00316         NicFeature getFeature(in string featureType, in string name) 
00317                 raises (FeatureNotFound);
00318 
00319 
00333         NicLocatorFeature getLocatorFeature(in string name) raises (FeatureNotFound);
00334 
00335 
00342         StringSeq getFeatureNames(in string featureType);
00343     };
00344 };
00345 };
00346 };
00347 };
00348 };
00349 };
00350 #endif  

Generated on Tue May 24 14:58:38 2011 for NIC Access API by  doxygen 1.4.7