NAME
Net::Google::DocumentsList::ACL - Access Control List object for Google Documents List Data API
SYNOPSIS
my
$client
= Net::Google::DocumentsList->new(
username
=>
'myname@gmail.com'
,
password
=>
'p4$$w0rd'
);
# taking one document
my
$doc
=
$client
->item;
# getting acls
my
@acls
=
$doc
->acls;
for
my
$acl
(
@acls
) {
# checking acl
if
(
$acl
->role eq
'writer'
&&
$acl
->scope->{type} eq
'user'
&&
$acl
->scope->{value} eq
'foo.bar@gmail.com'
) {
# updating acl
$acl
->role(
'reader'
);
$acl
->scope(
{
type
=>
'user'
,
value
=>
'someone.else@gmail.com'
,
}
);
# deleting acl
$acl
->
delete
;
}
}
# adding acl
$doc
->add_acl(
{
role
=>
'reader'
,
scope
=> {
type
=>
'user'
,
value
=>
'foo.bar@gmail.com'
,
}
}
);
# don't send email notification
$doc
->add_acl(
{
role
=>
'writer'
,
scope
=> {
type
=>
'user'
,
value
=>
'hoge.fuga@gmail.com'
,
},
send_notification_emails
=>
'false'
,
}
);
# adding acl with authorization keys
# users who knows the key can write the doc
my
$acl
=
$doc
->add_acl(
{
role
=>
'writer'
,
scope
=> {
type
=>
'default'
,
},
withKey
=> 1,
}
);
say
$acl
->withKey;
# this will show the key, and google (not you) makes the key
DESCRIPTION
This module represents Access Control List object for Google Documents List Data API.
METHODS
add_acl ( implemented in Net::Google::DocumentsList::Item object )
adds new ACL to document or folder.
$doc
->add_acl(
{
role
=>
'reader'
,
scope
=> {
type
=>
'user'
,
value
=>
'foo.bar@gmail.com'
,
}
}
);
delete
delete the acl from attached document or folder.
ATTRIBUTES
role
scope
hashref having 'type' and 'value' keys.
see http://code.google.com/intl/en/apis/documents/docs/3.0/developers_guide_protocol.html#AccessControlLists for details.
AUTHOR
Noubo Danjou <danjou@soffritto.org>
SEE ALSO
Net::Google::DocumentsList::Role::HasItems
http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.