You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@whimsical.apache.org by Sebastian Bazley <se...@apache.org> on 2016/02/15 16:42:28 UTC

[whimsy.git] [1/1] Commit c3e4ba2: Add createTimestamp to groups, committees, services

Commit c3e4ba2e8eab336b6c33b33ed1f243e535a80fb6:
    Add createTimestamp to groups, committees, services


Branch: refs/heads/master
Author: Sebb <se...@apache.org>
Committer: Sebb <se...@apache.org>
Pusher: sebb <se...@apache.org>

------------------------------------------------------------
lib/whimsy/asf/ldap.rb                                       | +++++++++ ------
www/roster/public_ldap_committees.rb                         | ++ 
www/roster/public_ldap_groups.rb                             | ++ 
www/roster/public_ldap_services.rb                           | ++ 
------------------------------------------------------------
21 changes: 15 additions, 6 deletions.
------------------------------------------------------------


diff --git a/lib/whimsy/asf/ldap.rb b/lib/whimsy/asf/ldap.rb
index 2df713b..5f3aa61 100644
--- a/lib/whimsy/asf/ldap.rb
+++ b/lib/whimsy/asf/ldap.rb
@@ -402,17 +402,18 @@ def include?(person)
     end
 
     def self.preload
-      Hash[ASF.search_one(base, "cn=*", %w(dn memberUid modifyTimestamp)).map do |results|
+      Hash[ASF.search_one(base, "cn=*", %w(dn memberUid modifyTimestamp createTimestamp)).map do |results|
         cn = results['dn'].first[/^cn=(.*?),/, 1]
         group = ASF::Group.find(cn)
         group.modifyTimestamp = results['modifyTimestamp'].first # it is returned as an array of 1 entry
+        group.createTimestamp = results['createTimestamp'].first # it is returned as an array of 1 entry
         members = results['memberUid']  || []
         group.members = members
         [group, members]
       end]
     end
 
-    attr_accessor :modifyTimestamp
+    attr_accessor :modifyTimestamp, :createTimestamp
 
     def members=(members)
       @members = WeakRef.new(members)
@@ -451,17 +452,18 @@ def self.list(filter='cn=*')
     end
 
     def self.preload
-      Hash[ASF.search_one(base, "cn=*", %w(dn member modifyTimestamp)).map do |results|
+      Hash[ASF.search_one(base, "cn=*", %w(dn member modifyTimestamp createTimestamp)).map do |results|
         cn = results['dn'].first[/^cn=(.*?),/, 1]
         committee = ASF::Committee.find(cn)
         committee.modifyTimestamp = results['modifyTimestamp'].first # it is returned as an array of 1 entry
+        committee.createTimestamp = results['createTimestamp'].first # it is returned as an array of 1 entry
         members = results['member'] || []
         committee.members = members
         [committee, members]
       end]
     end
 
-    attr_accessor :modifyTimestamp
+    attr_accessor :modifyTimestamp, :createTimestamp
 
     def members=(members)
       @members = WeakRef.new(members)
@@ -504,17 +506,18 @@ def dn
     end
 
     def self.preload
-      Hash[ASF.search_one(base, "cn=*", %w(dn member modifyTimestamp)).map do |results|
+      Hash[ASF.search_one(base, "cn=*", %w(dn member modifyTimestamp createTimestamp)).map do |results|
         cn = results['dn'].first[/^cn=(.*?),/, 1]
         service = ASF::Service.find(cn)
         service.modifyTimestamp = results['modifyTimestamp'].first # it is returned as an array of 1 entry
+        service.createTimestamp = results['createTimestamp'].first # it is returned as an array of 1 entry
         members = results['member'] || []
         service.members = members
         [service, members]
       end]
     end
 
-    attr_accessor :modifyTimestamp
+    attr_accessor :modifyTimestamp, :createTimestamp
 
     def members=(members)
       @members = WeakRef.new(members)
diff --git a/www/roster/public_ldap_committees.rb b/www/roster/public_ldap_committees.rb
index ef77d77..d844e5b 100644
--- a/www/roster/public_ldap_committees.rb
+++ b/www/roster/public_ldap_committees.rb
@@ -38,12 +38,14 @@
     end
     lastStamp = entry.modifyTimestamp if entry.modifyTimestamp > lastStamp
     entries[entry.name] = {
+        createTimestamp: entry.createTimestamp,
         modifyTimestamp: entry.modifyTimestamp,
         roster: m 
     }
 end
 
 info = {
+  # Is there a use case for the last createTimestamp ?
   lastTimestamp: lastStamp,
   committees: entries,
 }
diff --git a/www/roster/public_ldap_groups.rb b/www/roster/public_ldap_groups.rb
index ecb97c8..6678cb5 100644
--- a/www/roster/public_ldap_groups.rb
+++ b/www/roster/public_ldap_groups.rb
@@ -38,12 +38,14 @@
     end
     lastStamp = entry.modifyTimestamp if entry.modifyTimestamp > lastStamp
     entries[entry.name] = {
+        createTimestamp: entry.createTimestamp,
         modifyTimestamp: entry.modifyTimestamp,
         roster: m 
     }
 end
 
 info = {
+  # Is there a use case for the last createTimestamp ?
   lastTimestamp: lastStamp,
   groups: entries,
 }
diff --git a/www/roster/public_ldap_services.rb b/www/roster/public_ldap_services.rb
index 4ad8503..4418116 100644
--- a/www/roster/public_ldap_services.rb
+++ b/www/roster/public_ldap_services.rb
@@ -38,12 +38,14 @@
     end
     lastStamp = entry.modifyTimestamp if entry.modifyTimestamp > lastStamp
     entries[entry.name] = {
+        createTimestamp: entry.createTimestamp,
         modifyTimestamp: entry.modifyTimestamp,
         roster: m 
     }
 end
 
 info = {
+  # Is there a use case for the last createTimestamp ?
   lastTimestamp: lastStamp,
   services: entries,
 }