aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/pcs/cal.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/pcs/cal.c')
-rw-r--r--calendar/pcs/cal.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/calendar/pcs/cal.c b/calendar/pcs/cal.c
index 9040534940..bd6ffb4b38 100644
--- a/calendar/pcs/cal.c
+++ b/calendar/pcs/cal.c
@@ -125,6 +125,30 @@ impl_Cal_getAlarmEmailAddress (PortableServer_Servant servant,
return str_email_address_copy;
}
+
+/* Cal::get_ldap_attribute method */
+static CORBA_char *
+impl_Cal_getLdapAttribute (PortableServer_Servant servant,
+ CORBA_Environment *ev)
+{
+ Cal *cal;
+ CalPrivate *priv;
+ const char *str_ldap_attr;
+ CORBA_char *str_ldap_attr_copy;
+
+ cal = CAL (bonobo_object_from_servant (servant));
+ priv = cal->priv;
+
+ str_ldap_attr = cal_backend_get_ldap_attribute (priv->backend);
+ if (str_ldap_attr == NULL) {
+ bonobo_exception_set (ev, ex_GNOME_Evolution_Calendar_Cal_NotFound);
+ return CORBA_OBJECT_NIL;
+ }
+
+ str_ldap_attr_copy = CORBA_string_dup (str_ldap_attr);
+
+ return str_ldap_attr_copy;
+}
/* Cal::getSchedulingInformation method */
static CORBA_char *
@@ -817,6 +841,7 @@ cal_class_init (CalClass *klass)
epv->isReadOnly = impl_Cal_isReadOnly;
epv->getCalAddress = impl_Cal_getCalAddress;
epv->getAlarmEmailAddress = impl_Cal_getAlarmEmailAddress;
+ epv->getLdapAttribute = impl_Cal_getLdapAttribute;
epv->getStaticCapabilities = impl_Cal_getStaticCapabilities;
epv->setMode = impl_Cal_setMode;
epv->countObjects = impl_Cal_countObjects;