QEverCloud  6.1.0
Unofficial Evernote Cloud API for Qt
Public Member Functions | Public Attributes | List of all members
qevercloud::NotebookRestrictions Struct Reference

#include <Types.h>

Inheritance diagram for qevercloud::NotebookRestrictions:
qevercloud::Printable

Public Member Functions

virtual void print (QTextStream &strm) const override
 
bool operator== (const NotebookRestrictions &other) const
 
bool operator!= (const NotebookRestrictions &other) const
 
- Public Member Functions inherited from qevercloud::Printable
 Printable ()=default
 
virtual ~Printable ()=default
 
virtual QString toString () const
 

Public Attributes

EverCloudLocalData localData
 
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< SharedNotebookInstanceRestrictionsupdateWhichSharedNotebookRestrictions
 
Optional< SharedNotebookInstanceRestrictionsexpungeWhichSharedNotebookRestrictions
 
Optional< bool > noShareNotesWithBusiness
 
Optional< bool > noRenameNotebook
 
Optional< bool > noSetInMyList
 
Optional< bool > noChangeContact
 
Optional< CanMoveToContainerRestrictionscanMoveToContainerRestrictions
 
Optional< bool > noSetReminderNotifyEmail
 
Optional< bool > noSetReminderNotifyInApp
 
Optional< bool > noSetRecipientSettingsStack
 
Optional< bool > noCanMoveNote
 

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

◆ operator!=()

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

◆ operator==()

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

◆ print()

virtual void qevercloud::NotebookRestrictions::print ( QTextStream &  strm) const
overridevirtual

Implements qevercloud::Printable.

Member Data Documentation

◆ canMoveToContainerRestrictions

Optional< CanMoveToContainerRestrictions > qevercloud::NotebookRestrictions::canMoveToContainerRestrictions

Specifies if the client can move this notebook to a container and if not, the reason why.

◆ expungeWhichSharedNotebookRestrictions

Optional< SharedNotebookInstanceRestrictions > 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.

◆ localData

EverCloudLocalData qevercloud::NotebookRestrictions::localData

See the declaration of EverCloudLocalData for details

◆ noCanMoveNote

Optional< bool > qevercloud::NotebookRestrictions::noCanMoveNote

If set, the client cannot move a Note into or out of the Notebook.

◆ noChangeContact

Optional< bool > qevercloud::NotebookRestrictions::noChangeContact

NOT DOCUMENTED

◆ noCreateNotes

Optional< bool > qevercloud::NotebookRestrictions::noCreateNotes

The client may not create new notes in the notebook.

◆ noCreateSharedNotebooks

Optional< bool > qevercloud::NotebookRestrictions::noCreateSharedNotebooks

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

◆ noCreateTags

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.

◆ noEmailNotes

Optional< bool > qevercloud::NotebookRestrictions::noEmailNotes

The client may not e-mail notes by guid via the Evernote service by using the emailNote method. Email notes by value by populating the note parameter instead.

◆ noExpungeNotebook

Optional< bool > qevercloud::NotebookRestrictions::noExpungeNotebook

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

◆ noExpungeNotes

Optional< bool > qevercloud::NotebookRestrictions::noExpungeNotes

The client may not expunge notes currently in the notebook.

◆ noExpungeTags

Optional< bool > qevercloud::NotebookRestrictions::noExpungeTags

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

◆ noPublishToBusinessLibrary

Optional< bool > qevercloud::NotebookRestrictions::noPublishToBusinessLibrary

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

◆ noPublishToPublic

Optional< bool > qevercloud::NotebookRestrictions::noPublishToPublic

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

◆ noReadNotes

Optional< bool > qevercloud::NotebookRestrictions::noReadNotes

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

◆ noRenameNotebook

Optional< bool > qevercloud::NotebookRestrictions::noRenameNotebook

The client may not rename this notebook.

◆ noSendMessageToRecipients

Optional< bool > qevercloud::NotebookRestrictions::noSendMessageToRecipients

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

◆ noSetDefaultNotebook

Optional< bool > qevercloud::NotebookRestrictions::noSetDefaultNotebook

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

◆ noSetInMyList

Optional< bool > qevercloud::NotebookRestrictions::noSetInMyList

clients may not change the NotebookRecipientSettings.inMyList settings for this notebook.

◆ noSetNotebookStack

Optional< bool > qevercloud::NotebookRestrictions::noSetNotebookStack

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

◆ noSetParentTag

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.

◆ noSetRecipientSettingsStack

Optional< bool > qevercloud::NotebookRestrictions::noSetRecipientSettingsStack

NOT DOCUMENTED

◆ noSetReminderNotifyEmail

Optional< bool > qevercloud::NotebookRestrictions::noSetReminderNotifyEmail

NOT DOCUMENTED

◆ noSetReminderNotifyInApp

Optional< bool > qevercloud::NotebookRestrictions::noSetReminderNotifyInApp

NOT DOCUMENTED

◆ noShareNotes

Optional< bool > qevercloud::NotebookRestrictions::noShareNotes

The client may not share notes in the notebook via the shareNote or createOrUpdateSharedNotes methods.

◆ noShareNotesWithBusiness

Optional< bool > qevercloud::NotebookRestrictions::noShareNotesWithBusiness

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

◆ noUpdateNotebook

Optional< bool > qevercloud::NotebookRestrictions::noUpdateNotebook

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

◆ noUpdateNotes

Optional< bool > qevercloud::NotebookRestrictions::noUpdateNotes

The client may not update notes currently in the notebook.

◆ noUpdateTags

Optional< bool > qevercloud::NotebookRestrictions::noUpdateTags

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

◆ updateWhichSharedNotebookRestrictions

Optional< SharedNotebookInstanceRestrictions > 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.