Class PermissionChange
Objects of this class allow to change permissions of owned Realms. They are created exclusively by the client and are processed by the server as indicated by the status fields.
Inherited Members
Namespace:Realms.Sync
Assembly:Realm.Sync.dll
Syntax
public class PermissionChange : RealmObject, INotifyPropertyChanged, ISchemaSource, IThreadConfined, NotificationsHelper.INotifiable, IPermissionObject
Remarks
PermissionChange objects allow to grant and revoke permissions by setting MayRead, MayWrite and MayManage accordingly. If any of these flags are not set, these are merged with either the existing or default permissions as applicable. As a side-effect this causes that the default permissions are permanently materialized for the affected Realm files and the affected user. Once the request has been processed, the Status, StatusMessage, and ErrorCode will be updated accordingly.
Constructors
| Improve this Doc View SourcePermissionChange(String, String, Nullable<Boolean>, Nullable<Boolean>, Nullable<Boolean>)
Initializes a new instance of the PermissionChange class.
Declaration
public PermissionChange(string userId, string realmUrl, bool ? mayRead = null, bool ? mayWrite = null, bool ? mayManage = null)
Parameters
Type | Name | Description |
---|---|---|
String | userId | The user or users who should be granted these permission changes. Use * to change permissions for all users. |
String | realmUrl | The Realm URL whose permissions settings should be changed. Use |
Nullable<Boolean> | mayRead | Define read access. |
Nullable<Boolean> | mayWrite | Define write access. |
Nullable<Boolean> | mayManage | Define manage access. |
Properties
| Improve this Doc View SourceCreatedAt
Gets the creation time of this object.
Declaration
[MapTo("createdAt")]
public DateTimeOffset CreatedAt { get; }
Property Value
Type | Description |
---|---|
DateTimeOffset | A DateTimeOffset indicating the object's creation date and time. |
Implements
| Improve this Doc View SourceErrorCode
Gets the ErrorCode if any.
Declaration
public ErrorCode? ErrorCode { get; }
Property Value
Type | Description |
---|---|
Nullable<ErrorCode> | An ErrorCode that indicates the reason for the error during processing.
|
Implements
Remarks
Filled by the server after an object was processed indicating the status of the operation. If Status returns Error, the ErrorCode property can be used to get a strongly typed code for the error and handle expected error conditions, such as expired offer or attempting to share a realm without having manage access.
Id
Gets the unique identifier of this object in the Management realm.
Declaration
[PrimaryKey]
[Required]
[MapTo("id")]
public string Id { get; }
Property Value
Type | Description |
---|---|
String | The unique id of the object. |
Implements
| Improve this Doc View SourceMayManage
Gets a value indicating whether the user(s) have manage access to the specified Realm(s).
Declaration
[MapTo("mayManage")]
public bool ? MayManage { get; }
Property Value
Type | Description |
---|---|
Nullable<Boolean> |
|
MayRead
Gets a value indicating whether the user(s) have read access to the specified Realm(s).
Declaration
[MapTo("mayRead")]
public bool ? MayRead { get; }
Property Value
Type | Description |
---|---|
Nullable<Boolean> |
|
MayWrite
Gets a value indicating whether the user(s) have write access to the specified Realm(s).
Declaration
[MapTo("mayWrite")]
public bool ? MayWrite { get; }
Property Value
Type | Description |
---|---|
Nullable<Boolean> |
|
RealmUrl
Gets the Realm to change permissions for.
Declaration
[Required]
[MapTo("realmUrl")]
public string RealmUrl { get; }
Property Value
Type | Description |
---|---|
String |
|
Status
Gets the ManagementObjectStatus as set by the server.
Declaration
public ManagementObjectStatus Status { get; }
Property Value
Type | Description |
---|---|
ManagementObjectStatus | An enum indicating whether the operation has completed successfully. |
Implements
| Improve this Doc View SourceStatusMessage
Gets the status message.
Declaration
[MapTo("statusMessage")]
public string StatusMessage { get; }
Property Value
Type | Description |
---|---|
String | A detailed message describing the status (success, error) of the operation. |
Implements
Remarks
Filled by the server after an object was processed with additional info explaining the status if necessary.
UpdatedAt
Gets when the object was updated the last time.
Declaration
[MapTo("updatedAt")]
public DateTimeOffset UpdatedAt { get; }
Property Value
Type | Description |
---|---|
DateTimeOffset | A DateTimeOffset indicating the last time the object has been updated. |
Implements
Remarks
This will be updated by the server with the current object when the object is processed.
UserId
Gets the user or users to effect.
Declaration
[Required]
[MapTo("userId")]
public string UserId { get; }
Property Value
Type | Description |
---|---|
String |
|
Methods
| Improve this Doc View SourceOnPropertyChanged(String)
Called when a property has changed on this class.
Declaration
protected override void OnPropertyChanged(string propertyName)
Parameters
Type | Name | Description |
---|---|---|
String | propertyName | The name of the property. |
Overrides
Remarks
For this method to be called, you need to have first subscribed to PropertyChanged. This can be used to react to changes to the current object, e.g. raising PropertyChanged for computed properties.