Package com.dropbox.core.v2.sharing
Class LinkPermissions
- java.lang.Object
-
- com.dropbox.core.v2.sharing.LinkPermissions
-
public class LinkPermissions extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LinkPermissions.Builder
Builder forLinkPermissions
.
-
Field Summary
Fields Modifier and Type Field Description protected boolean
allowComments
protected boolean
allowDownload
protected java.util.List<LinkAudienceOption>
audienceOptions
protected boolean
canAllowDownload
protected boolean
canDisallowDownload
protected boolean
canRemoveExpiry
protected java.lang.Boolean
canRemovePassword
protected boolean
canRevoke
protected boolean
canSetExpiry
protected java.lang.Boolean
canSetPassword
protected java.lang.Boolean
canUseExtendedSharingControls
protected LinkAudience
effectiveAudience
protected LinkAccessLevel
linkAccessLevel
protected RequestedVisibility
requestedVisibility
protected java.lang.Boolean
requirePassword
protected ResolvedVisibility
resolvedVisibility
protected SharedLinkAccessFailureReason
revokeFailureReason
protected boolean
teamRestrictsComments
protected java.util.List<VisibilityPolicy>
visibilityPolicies
-
Constructor Summary
Constructors Constructor Description LinkPermissions(boolean canRevoke, java.util.List<VisibilityPolicy> visibilityPolicies, boolean canSetExpiry, boolean canRemoveExpiry, boolean allowDownload, boolean canAllowDownload, boolean canDisallowDownload, boolean allowComments, boolean teamRestrictsComments)
NoneLinkPermissions(boolean canRevoke, java.util.List<VisibilityPolicy> visibilityPolicies, boolean canSetExpiry, boolean canRemoveExpiry, boolean allowDownload, boolean canAllowDownload, boolean canDisallowDownload, boolean allowComments, boolean teamRestrictsComments, ResolvedVisibility resolvedVisibility, RequestedVisibility requestedVisibility, SharedLinkAccessFailureReason revokeFailureReason, LinkAudience effectiveAudience, LinkAccessLevel linkAccessLevel, java.util.List<LinkAudienceOption> audienceOptions, java.lang.Boolean canSetPassword, java.lang.Boolean canRemovePassword, java.lang.Boolean requirePassword, java.lang.Boolean canUseExtendedSharingControls)
UsenewBuilder(boolean,java.util.List<com.dropbox.core.v2.sharing.VisibilityPolicy>,boolean,boolean,boolean,boolean,boolean,boolean,boolean)
to create instances of this class without specifying values for all optional fields.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
boolean
getAllowComments()
Whether comments are enabled for the linked file.boolean
getAllowDownload()
Whether the link can be downloaded or not.java.util.List<LinkAudienceOption>
getAudienceOptions()
A list of link audience options the user might be able to set as the new audience.boolean
getCanAllowDownload()
Whether the user can allow downloads via the link.boolean
getCanDisallowDownload()
Whether the user can disallow downloads via the link.boolean
getCanRemoveExpiry()
Whether the user can remove the expiry of the link.java.lang.Boolean
getCanRemovePassword()
Whether the user can remove the password of the link.boolean
getCanRevoke()
Whether the caller can revoke the shared link.boolean
getCanSetExpiry()
Whether the user can set the expiry settings of the link.java.lang.Boolean
getCanSetPassword()
Whether the user can set a password for the link.java.lang.Boolean
getCanUseExtendedSharingControls()
Whether the user can use extended sharing controls, based on their account type.LinkAudience
getEffectiveAudience()
The type of audience who can benefit from the access level specified by the `link_access_level` field.LinkAccessLevel
getLinkAccessLevel()
The access level that the link will grant to its users.RequestedVisibility
getRequestedVisibility()
The shared link's requested visibility.java.lang.Boolean
getRequirePassword()
Whether the user is required to provide a password to view the link.ResolvedVisibility
getResolvedVisibility()
The current visibility of the link after considering the shared links policies of the the team (in case the link's owner is part of a team) and the shared folder (in case the linked file is part of a shared folder).SharedLinkAccessFailureReason
getRevokeFailureReason()
The failure reason for revoking the link.boolean
getTeamRestrictsComments()
Whether the team has disabled commenting globally.java.util.List<VisibilityPolicy>
getVisibilityPolicies()
A list of policies that the user might be able to set for the visibility.int
hashCode()
static LinkPermissions.Builder
newBuilder(boolean canRevoke, java.util.List<VisibilityPolicy> visibilityPolicies, boolean canSetExpiry, boolean canRemoveExpiry, boolean allowDownload, boolean canAllowDownload, boolean canDisallowDownload, boolean allowComments, boolean teamRestrictsComments)
Returns a new builder for creating an instance of this class.java.lang.String
toString()
java.lang.String
toStringMultiline()
Returns a String representation of this object formatted for easier readability.
-
-
-
Field Detail
-
resolvedVisibility
@Nullable protected final ResolvedVisibility resolvedVisibility
-
requestedVisibility
@Nullable protected final RequestedVisibility requestedVisibility
-
canRevoke
protected final boolean canRevoke
-
revokeFailureReason
@Nullable protected final SharedLinkAccessFailureReason revokeFailureReason
-
effectiveAudience
@Nullable protected final LinkAudience effectiveAudience
-
linkAccessLevel
@Nullable protected final LinkAccessLevel linkAccessLevel
-
visibilityPolicies
@Nonnull protected final java.util.List<VisibilityPolicy> visibilityPolicies
-
canSetExpiry
protected final boolean canSetExpiry
-
canRemoveExpiry
protected final boolean canRemoveExpiry
-
allowDownload
protected final boolean allowDownload
-
canAllowDownload
protected final boolean canAllowDownload
-
canDisallowDownload
protected final boolean canDisallowDownload
-
allowComments
protected final boolean allowComments
-
teamRestrictsComments
protected final boolean teamRestrictsComments
-
audienceOptions
@Nullable protected final java.util.List<LinkAudienceOption> audienceOptions
-
canSetPassword
@Nullable protected final java.lang.Boolean canSetPassword
-
canRemovePassword
@Nullable protected final java.lang.Boolean canRemovePassword
-
requirePassword
@Nullable protected final java.lang.Boolean requirePassword
-
canUseExtendedSharingControls
@Nullable protected final java.lang.Boolean canUseExtendedSharingControls
-
-
Constructor Detail
-
LinkPermissions
public LinkPermissions(boolean canRevoke, @Nonnull java.util.List<VisibilityPolicy> visibilityPolicies, boolean canSetExpiry, boolean canRemoveExpiry, boolean allowDownload, boolean canAllowDownload, boolean canDisallowDownload, boolean allowComments, boolean teamRestrictsComments, @Nullable ResolvedVisibility resolvedVisibility, @Nullable RequestedVisibility requestedVisibility, @Nullable SharedLinkAccessFailureReason revokeFailureReason, @Nullable LinkAudience effectiveAudience, @Nullable LinkAccessLevel linkAccessLevel, @Nullable java.util.List<LinkAudienceOption> audienceOptions, @Nullable java.lang.Boolean canSetPassword, @Nullable java.lang.Boolean canRemovePassword, @Nullable java.lang.Boolean requirePassword, @Nullable java.lang.Boolean canUseExtendedSharingControls)
UsenewBuilder(boolean,java.util.List<com.dropbox.core.v2.sharing.VisibilityPolicy>,boolean,boolean,boolean,boolean,boolean,boolean,boolean)
to create instances of this class without specifying values for all optional fields.- Parameters:
canRevoke
- Whether the caller can revoke the shared link.visibilityPolicies
- A list of policies that the user might be able to set for the visibility. Must not contain anull
item and not benull
.canSetExpiry
- Whether the user can set the expiry settings of the link. This refers to the ability to create a new expiry and modify an existing expiry.canRemoveExpiry
- Whether the user can remove the expiry of the link.allowDownload
- Whether the link can be downloaded or not.canAllowDownload
- Whether the user can allow downloads via the link. This refers to the ability to remove a no-download restriction on the link.canDisallowDownload
- Whether the user can disallow downloads via the link. This refers to the ability to impose a no-download restriction on the link.allowComments
- Whether comments are enabled for the linked file. This takes the team commenting policy into account.teamRestrictsComments
- Whether the team has disabled commenting globally.resolvedVisibility
- The current visibility of the link after considering the shared links policies of the the team (in case the link's owner is part of a team) and the shared folder (in case the linked file is part of a shared folder). This field is shown only if the caller has access to this info (the link's owner always has access to this data). For some links, an effective_audience value is returned instead.requestedVisibility
- The shared link's requested visibility. This can be overridden by the team and shared folder policies. The final visibility, after considering these policies, can be found ingetResolvedVisibility()
. This is shown only if the caller is the link's owner and resolved_visibility is returned instead of effective_audience.revokeFailureReason
- The failure reason for revoking the link. This field will only be present if thegetCanRevoke()
isfalse
.effectiveAudience
- The type of audience who can benefit from the access level specified by the `link_access_level` field.linkAccessLevel
- The access level that the link will grant to its users. A link can grant additional rights to a user beyond their current access level. For example, if a user was invited as a viewer to a file, and then opens a link with `link_access_level` set to `editor`, then they will gain editor privileges. The `link_access_level` is a property of the link, and does not depend on who is calling this API. In particular, `link_access_level` does not take into account the API caller's current permissions to the content.audienceOptions
- A list of link audience options the user might be able to set as the new audience. Must not contain anull
item.canSetPassword
- Whether the user can set a password for the link.canRemovePassword
- Whether the user can remove the password of the link.requirePassword
- Whether the user is required to provide a password to view the link.canUseExtendedSharingControls
- Whether the user can use extended sharing controls, based on their account type.- Throws:
java.lang.IllegalArgumentException
- If any argument does not meet its preconditions.
-
LinkPermissions
public LinkPermissions(boolean canRevoke, @Nonnull java.util.List<VisibilityPolicy> visibilityPolicies, boolean canSetExpiry, boolean canRemoveExpiry, boolean allowDownload, boolean canAllowDownload, boolean canDisallowDownload, boolean allowComments, boolean teamRestrictsComments)
NoneThe default values for unset fields will be used.
- Parameters:
canRevoke
- Whether the caller can revoke the shared link.visibilityPolicies
- A list of policies that the user might be able to set for the visibility. Must not contain anull
item and not benull
.canSetExpiry
- Whether the user can set the expiry settings of the link. This refers to the ability to create a new expiry and modify an existing expiry.canRemoveExpiry
- Whether the user can remove the expiry of the link.allowDownload
- Whether the link can be downloaded or not.canAllowDownload
- Whether the user can allow downloads via the link. This refers to the ability to remove a no-download restriction on the link.canDisallowDownload
- Whether the user can disallow downloads via the link. This refers to the ability to impose a no-download restriction on the link.allowComments
- Whether comments are enabled for the linked file. This takes the team commenting policy into account.teamRestrictsComments
- Whether the team has disabled commenting globally.- Throws:
java.lang.IllegalArgumentException
- If any argument does not meet its preconditions.
-
-
Method Detail
-
getCanRevoke
public boolean getCanRevoke()
Whether the caller can revoke the shared link.- Returns:
- value for this field.
-
getVisibilityPolicies
@Nonnull public java.util.List<VisibilityPolicy> getVisibilityPolicies()
A list of policies that the user might be able to set for the visibility.- Returns:
- value for this field, never
null
.
-
getCanSetExpiry
public boolean getCanSetExpiry()
Whether the user can set the expiry settings of the link. This refers to the ability to create a new expiry and modify an existing expiry.- Returns:
- value for this field.
-
getCanRemoveExpiry
public boolean getCanRemoveExpiry()
Whether the user can remove the expiry of the link.- Returns:
- value for this field.
-
getAllowDownload
public boolean getAllowDownload()
Whether the link can be downloaded or not.- Returns:
- value for this field.
-
getCanAllowDownload
public boolean getCanAllowDownload()
Whether the user can allow downloads via the link. This refers to the ability to remove a no-download restriction on the link.- Returns:
- value for this field.
-
getCanDisallowDownload
public boolean getCanDisallowDownload()
Whether the user can disallow downloads via the link. This refers to the ability to impose a no-download restriction on the link.- Returns:
- value for this field.
-
getAllowComments
public boolean getAllowComments()
Whether comments are enabled for the linked file. This takes the team commenting policy into account.- Returns:
- value for this field.
-
getTeamRestrictsComments
public boolean getTeamRestrictsComments()
Whether the team has disabled commenting globally.- Returns:
- value for this field.
-
getResolvedVisibility
@Nullable public ResolvedVisibility getResolvedVisibility()
The current visibility of the link after considering the shared links policies of the the team (in case the link's owner is part of a team) and the shared folder (in case the linked file is part of a shared folder). This field is shown only if the caller has access to this info (the link's owner always has access to this data). For some links, an effective_audience value is returned instead.- Returns:
- value for this field, or
null
if not present.
-
getRequestedVisibility
@Nullable public RequestedVisibility getRequestedVisibility()
The shared link's requested visibility. This can be overridden by the team and shared folder policies. The final visibility, after considering these policies, can be found ingetResolvedVisibility()
. This is shown only if the caller is the link's owner and resolved_visibility is returned instead of effective_audience.- Returns:
- value for this field, or
null
if not present.
-
getRevokeFailureReason
@Nullable public SharedLinkAccessFailureReason getRevokeFailureReason()
The failure reason for revoking the link. This field will only be present if thegetCanRevoke()
isfalse
.- Returns:
- value for this field, or
null
if not present.
-
getEffectiveAudience
@Nullable public LinkAudience getEffectiveAudience()
The type of audience who can benefit from the access level specified by the `link_access_level` field.- Returns:
- value for this field, or
null
if not present.
-
getLinkAccessLevel
@Nullable public LinkAccessLevel getLinkAccessLevel()
The access level that the link will grant to its users. A link can grant additional rights to a user beyond their current access level. For example, if a user was invited as a viewer to a file, and then opens a link with `link_access_level` set to `editor`, then they will gain editor privileges. The `link_access_level` is a property of the link, and does not depend on who is calling this API. In particular, `link_access_level` does not take into account the API caller's current permissions to the content.- Returns:
- value for this field, or
null
if not present.
-
getAudienceOptions
@Nullable public java.util.List<LinkAudienceOption> getAudienceOptions()
A list of link audience options the user might be able to set as the new audience.- Returns:
- value for this field, or
null
if not present.
-
getCanSetPassword
@Nullable public java.lang.Boolean getCanSetPassword()
Whether the user can set a password for the link.- Returns:
- value for this field, or
null
if not present.
-
getCanRemovePassword
@Nullable public java.lang.Boolean getCanRemovePassword()
Whether the user can remove the password of the link.- Returns:
- value for this field, or
null
if not present.
-
getRequirePassword
@Nullable public java.lang.Boolean getRequirePassword()
Whether the user is required to provide a password to view the link.- Returns:
- value for this field, or
null
if not present.
-
getCanUseExtendedSharingControls
@Nullable public java.lang.Boolean getCanUseExtendedSharingControls()
Whether the user can use extended sharing controls, based on their account type.- Returns:
- value for this field, or
null
if not present.
-
newBuilder
public static LinkPermissions.Builder newBuilder(boolean canRevoke, java.util.List<VisibilityPolicy> visibilityPolicies, boolean canSetExpiry, boolean canRemoveExpiry, boolean allowDownload, boolean canAllowDownload, boolean canDisallowDownload, boolean allowComments, boolean teamRestrictsComments)
Returns a new builder for creating an instance of this class.- Parameters:
canRevoke
- Whether the caller can revoke the shared link.visibilityPolicies
- A list of policies that the user might be able to set for the visibility. Must not contain anull
item and not benull
.canSetExpiry
- Whether the user can set the expiry settings of the link. This refers to the ability to create a new expiry and modify an existing expiry.canRemoveExpiry
- Whether the user can remove the expiry of the link.allowDownload
- Whether the link can be downloaded or not.canAllowDownload
- Whether the user can allow downloads via the link. This refers to the ability to remove a no-download restriction on the link.canDisallowDownload
- Whether the user can disallow downloads via the link. This refers to the ability to impose a no-download restriction on the link.allowComments
- Whether comments are enabled for the linked file. This takes the team commenting policy into account.teamRestrictsComments
- Whether the team has disabled commenting globally.- Returns:
- builder for this class.
- Throws:
java.lang.IllegalArgumentException
- If any argument does not meet its preconditions.
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
toStringMultiline
public java.lang.String toStringMultiline()
Returns a String representation of this object formatted for easier readability.The returned String may contain newlines.
- Returns:
- Formatted, multiline String representation of this object
-
-