QEverCloud  3.0.0
Unofficial Evernote Cloud API for Qt
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Public Attributes | List of all members
qevercloud::NotebookRestrictions Struct Reference

#include <types.h>

Public Member Functions

bool operator== (const NotebookRestrictions &other) const
 
bool operator!= (const NotebookRestrictions &other) const
 

Public Attributes

Optional< bool > noReadNotes
 
Optional< bool > noCreateNotes
 
Optional< bool > noUpdateNotes
 
Optional< bool > noExpungeNotes
 
Optional< bool > noShareNotes
 
Optional< bool > noEmailNotes
 
Optional< bool > noSendMessageToRecipients
 
Optional< bool > noUpdateNotebook
 
Optional< bool > noExpungeNotebook
 
Optional< bool > noSetDefaultNotebook
 
Optional< bool > noSetNotebookStack
 
Optional< bool > noPublishToPublic
 
Optional< bool > noPublishToBusinessLibrary
 
Optional< bool > noCreateTags
 
Optional< bool > noUpdateTags
 
Optional< bool > noExpungeTags
 
Optional< bool > noSetParentTag
 
Optional< bool > noCreateSharedNotebooks
 
Optional
< SharedNotebookInstanceRestrictions::type
updateWhichSharedNotebookRestrictions
 
Optional
< SharedNotebookInstanceRestrictions::type
expungeWhichSharedNotebookRestrictions
 

Detailed Description

This structure captures information about the types of operations that cannot be performed on a given notebook with a type of authenticated access and credentials. The values filled into this structure are based on then-current values in the server database for shared notebooks and notebook publishing records, as well as information related to the authentication token. Information from the authentication token includes the application that is accessing the server, as defined by the permissions granted by consumer (api) key, and the method used to obtain the token, for example via authenticateToSharedNotebook, authenticateToBusiness, etc. Note that changes to values in this structure that are the result of shared notebook or publishing record changes are communicated to the client via a change in the notebook USN during sync. It is important to use the same access method, parameters, and consumer key in order obtain correct results from the sync engine.

The server has the final say on what is allowed as values may change between calls to obtain NotebookRestrictions instances and to operate on data on the service.

If the following are set and true, then the given restriction is in effect, as accessed by the same authentication token from which the values were obtained.

Member Function Documentation

bool qevercloud::NotebookRestrictions::operator!= ( const NotebookRestrictions other) const
inline
bool qevercloud::NotebookRestrictions::operator== ( const NotebookRestrictions other) const
inline

Member Data Documentation

Optional< SharedNotebookInstanceRestrictions::type > qevercloud::NotebookRestrictions::expungeWhichSharedNotebookRestrictions

Restrictions on which shared notebook instances can be expunged. If the value is not set or null, then the client can expunge any of the shared notebooks associated with the notebook on which the NotebookRestrictions are defined. See the enumeration for further details.

Optional< bool > qevercloud::NotebookRestrictions::noCreateNotes

The client may not create new notes in the notebook.

Optional< bool > qevercloud::NotebookRestrictions::noCreateSharedNotebooks

The client is unable to create shared notebooks for the notebook.

Optional< bool > qevercloud::NotebookRestrictions::noCreateTags

The client may not complete an operation that results in a new tag being created in the owner's account.

Optional< bool > qevercloud::NotebookRestrictions::noEmailNotes

The client may not e-mail notes via the Evernote service by using the emailNote method.

Optional< bool > qevercloud::NotebookRestrictions::noExpungeNotebook

The client may not expunge the Notebook object itself, for example, via the expungeNotebook method.

Optional< bool > qevercloud::NotebookRestrictions::noExpungeNotes

The client may not expunge notes currently in the notebook.

Optional< bool > qevercloud::NotebookRestrictions::noExpungeTags

The client may not expunge tags in the owner's account.

Optional< bool > qevercloud::NotebookRestrictions::noPublishToBusinessLibrary

The client may not publish the notebook to the business library.

Optional< bool > qevercloud::NotebookRestrictions::noPublishToPublic

The client may not change the publish the notebook to the public. For example, business notebooks may not be shared publicly.

Optional< bool > qevercloud::NotebookRestrictions::noReadNotes

The client is not able to read notes from the service and the notebook is write-only.

Optional< bool > qevercloud::NotebookRestrictions::noSendMessageToRecipients

The client may not send messages to the share recipients of the notebook.

Optional< bool > qevercloud::NotebookRestrictions::noSetDefaultNotebook

The client may not set this notebook to be the default notebook. The caller should leave Notebook.defaultNotebook unset.

Optional< bool > qevercloud::NotebookRestrictions::noSetNotebookStack

If the client is able to update the Notebook, the Notebook.stack value may not be set.

Optional< bool > qevercloud::NotebookRestrictions::noSetParentTag

If the client is able to create or update tags in the owner's account, then they will not be able to set the parent tag. Leave the value unset.

Optional< bool > qevercloud::NotebookRestrictions::noShareNotes

The client may not share notes in the notebook via the shareNote method.

Optional< bool > qevercloud::NotebookRestrictions::noUpdateNotebook

The client may not update the Notebook object itself, for example, via the updateNotebook method.

Optional< bool > qevercloud::NotebookRestrictions::noUpdateNotes

The client may not update notes currently in the notebook.

Optional< bool > qevercloud::NotebookRestrictions::noUpdateTags

The client may not update tags in the owner's account.

Optional< SharedNotebookInstanceRestrictions::type > qevercloud::NotebookRestrictions::updateWhichSharedNotebookRestrictions

Restrictions on which shared notebook instances can be updated. If the value is not set or null, then the client can update any of the shared notebooks associated with the notebook on which the NotebookRestrictions are defined. See the enumeration for further details.