+// $OpenLDAP$
/*
- * Copyright 2003, OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 2003-2013 The OpenLDAP Foundation, All Rights Reserved.
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file
*/
desc = string ();
names = StringList ();
single = false;
+ usage = 0;
}
-LDAPAttrType::LDAPAttrType (const LDAPAttrType &at){
- DEBUG(LDAP_DEBUG_CONSTRUCT,
- "LDAPAttrType::LDAPAttrType( )" << endl);
-
- oid = at.oid;
- desc = at.desc;
- names = at.names;
- single = at.single;
-}
-
-LDAPAttrType::LDAPAttrType (string at_item) {
+LDAPAttrType::LDAPAttrType (string at_item, int flags ) {
DEBUG(LDAP_DEBUG_CONSTRUCT,
"LDAPAttrType::LDAPAttrType( )" << endl);
LDAPAttributeType *a;
int ret;
const char *errp;
- a = ldap_str2attributetype (at_item.c_str(), &ret, &errp,SCHEMA_PARSE_FLAG);
+ a = ldap_str2attributetype (at_item.c_str(), &ret, &errp, flags);
if (a) {
- this->setNames (a->at_names);
- this->setDesc (a->at_desc);
- this->setOid (a->at_oid);
- this->setSingle (a->at_single_value);
+ this->setNames( a->at_names );
+ this->setDesc( a->at_desc );
+ this->setOid( a->at_oid );
+ this->setSingle( a->at_single_value );
+ this->setUsage( a->at_usage );
+ this->setSuperiorOid( a->at_sup_oid );
+ this->setEqualityOid( a->at_equality_oid );
+ this->setOrderingOid( a->at_ordering_oid );
+ this->setSubstringOid( a->at_substr_oid );
+ this->setSyntaxOid( a->at_syntax_oid );
}
// else? -> error
}
single = (at_single == 1);
}
-void LDAPAttrType::setNames (char **at_names) {
- names = StringList (at_names);
+void LDAPAttrType::setNames ( char **at_names ) {
+ names = StringList(at_names);
}
-void LDAPAttrType::setDesc (char *at_desc) {
+void LDAPAttrType::setDesc (const char *at_desc) {
desc = string ();
if (at_desc)
desc = at_desc;
}
-void LDAPAttrType::setOid (char *at_oid) {
+void LDAPAttrType::setOid (const char *at_oid) {
oid = string ();
if (at_oid)
oid = at_oid;
}
-bool LDAPAttrType::isSingle () {
- return single;
+void LDAPAttrType::setUsage (int at_usage) {
+ usage = at_usage;
+}
+
+void LDAPAttrType::setSuperiorOid( const char *oid ){
+ if ( oid )
+ superiorOid = oid;
+}
+
+void LDAPAttrType::setEqualityOid( const char *oid ){
+ if ( oid )
+ equalityOid = oid;
+}
+
+void LDAPAttrType::setOrderingOid( const char *oid ){
+ if ( oid )
+ orderingOid = oid;
+}
+
+void LDAPAttrType::setSubstringOid( const char *oid ){
+ if ( oid )
+ substringOid = oid;
+}
+
+void LDAPAttrType::setSyntaxOid( const char *oid ){
+ if ( oid )
+ syntaxOid = oid;
}
-string LDAPAttrType::getOid () {
+bool LDAPAttrType::isSingle() const {
+ return single;
+}
+
+string LDAPAttrType::getOid() const {
return oid;
}
-string LDAPAttrType::getDesc () {
+string LDAPAttrType::getDesc() const {
return desc;
}
-StringList LDAPAttrType::getNames () {
+StringList LDAPAttrType::getNames() const {
return names;
}
-string LDAPAttrType::getName () {
+string LDAPAttrType::getName() const {
if (names.empty())
return "";
else
return *(names.begin());
}
+
+int LDAPAttrType::getUsage() const {
+ return usage;
+}
+
+std::string LDAPAttrType::getSuperiorOid() const {
+ return superiorOid;
+}
+
+std::string LDAPAttrType::getEqualityOid() const {
+ return equalityOid;
+}
+
+std::string LDAPAttrType::getOrderingOid() const {
+ return orderingOid;
+}
+
+std::string LDAPAttrType::getSubstringOid() const {
+ return substringOid;
+}
+
+std::string LDAPAttrType::getSyntaxOid() const {
+ return syntaxOid;
+}
+
+