bf31adc360d71b5d986493f64865c4bf4a54a90d
[gssweb.git] / json_gssapi / src / datamodel / GSSOIDSet.h
1 /*
2  * Copyright (c) 2014 <copyright holder> <email>
3  *
4  * For license details, see the LICENSE file in the root of this project.
5  *
6  */
7
8 #ifndef GSSOIDSET_H
9 #define GSSOIDSET_H
10 #include "GSSOID.h"
11
12 class GSSOIDSet
13 {
14 public:
15     GSSOIDSet();
16     ~GSSOIDSet();
17
18     GSSOIDSet& operator= ( const gss_OID_set other );
19     void addOID (const GSSOID other );
20     void addOID (const gss_OID other );
21     gss_OID_set toGss() const { return(set); }
22     
23     bool includes(const gss_OID oid) const;
24     bool includes(const GSSOID &oid) const;
25     
26     JSONObject *toJSONValue() const;
27     
28 private:
29     gss_OID_set set;
30
31     GSSOIDSet ( const GSSOIDSet& other ) {};
32     void init();
33     gss_OID copyOID(gss_OID source, gss_OID destination);
34     void releaseOIDSet();
35 };
36
37 #endif // GSSOIDSET_H