Class: Tilia::CardDav::AddressBookRoot
- Inherits:
-
DavAcl::AbstractPrincipalCollection
- Object
- Dav::Node
- Dav::Collection
- DavAcl::AbstractPrincipalCollection
- Tilia::CardDav::AddressBookRoot
- Defined in:
- lib/tilia/card_dav/address_book_root.rb
Overview
AddressBook rootnode
This object lists a collection of users, which can contain addressbooks.
Instance Attribute Summary
Attributes inherited from DavAcl::AbstractPrincipalCollection
Instance Method Summary collapse
-
#child_for_principal(principal) ⇒ Object
This method returns a node for a principal.
-
#initialize(principal_backend, carddav_backend, principal_prefix = 'principals') ⇒ AddressBookRoot
constructor
Constructor.
-
#name ⇒ Object
Returns the name of the node.
Methods inherited from DavAcl::AbstractPrincipalCollection
#child, #children, #find_by_uri, #search_principals
Methods included from DavAcl::IPrincipalCollection
#find_by_uri, #search_principals
Methods included from Dav::ICollection
#child, #child_exists, #children, #create_directory, #create_file
Methods included from Dav::INode
#delete, #last_modified, #name=
Methods inherited from Dav::Collection
#child, #child_exists, #create_directory, #create_file
Methods inherited from Dav::Node
#delete, #last_modified, #name=
Constructor Details
#initialize(principal_backend, carddav_backend, principal_prefix = 'principals') ⇒ AddressBookRoot
Constructor
This constructor needs both a principal and a carddav backend.
By default this class will show a list of addressbook collections for principals in the ‘principals’ collection. If your main principals are actually located in a different path, use the principal_prefix argument to override this.
33 34 35 36 |
# File 'lib/tilia/card_dav/address_book_root.rb', line 33 def initialize(principal_backend, carddav_backend, principal_prefix = 'principals') @carddav_backend = carddav_backend super(principal_backend, principal_prefix) end |
Instance Method Details
#child_for_principal(principal) ⇒ Object
This method returns a node for a principal.
The passed array contains principal information, and is guaranteed to at least contain a uri item. Other properties may or may not be supplied by the authentication backend.
53 54 55 |
# File 'lib/tilia/card_dav/address_book_root.rb', line 53 def child_for_principal(principal) AddressBookHome.new(@carddav_backend, principal['uri']) end |
#name ⇒ Object
Returns the name of the node
41 42 43 |
# File 'lib/tilia/card_dav/address_book_root.rb', line 41 def name Plugin::ADDRESSBOOK_ROOT end |