### Class

# Gio SimplePermission

since: 2.0

#### Description

    final class Gio.SimplePermission : Gio.Permission
    {
      /* No available fields */
    }

`GSimplePermission` is a trivial implementation of `GPermission` that represents a permission that is either always or never allowed. The value is given at construction and doesn’t change.

Calling `g_permission_acquire()` or `g_permission_release()` on a `GSimplePermission` will result in errors.

Available since: 2.0

#### Ancestors

- GPermission
- GObject

#### Constructors

###### g_simple_permission_new

Creates a new `GPermission` instance that represents an action that is either always or never allowed.

since: 2.26

#### Instance methods

##### Methods inherited from GPermission (10)

###### g_permission_acquire

Attempts to acquire the permission represented by `permission`.

since: 2.26

###### g_permission_acquire_async

Attempts to acquire the permission represented by `permission`.

since: 2.26

###### g_permission_acquire_finish

Collects the result of attempting to acquire the permission represented by `permission`.

since: 2.26

###### g_permission_get_allowed

Gets the value of the ‘allowed’ property. This property is `TRUE` if the caller currently has permission to perform the action that `permission` represents the permission to perform.

since: 2.26

###### g_permission_get_can_acquire

Gets the value of the ‘can-acquire’ property. This property is `TRUE` if it is generally possible to acquire the permission by calling g_permission_acquire().

since: 2.26

###### g_permission_get_can_release

Gets the value of the ‘can-release’ property. This property is `TRUE` if it is generally possible to release the permission by calling g_permission_release().

since: 2.26

###### g_permission_impl_update

This function is called by the `GPermission` implementation to update the properties of the permission. You should never call this function except from a `GPermission` implementation.

since: 2.26

###### g_permission_release

Attempts to release the permission represented by `permission`.

since: 2.26

###### g_permission_release_async

Attempts to release the permission represented by `permission`.

since: 2.26

###### g_permission_release_finish

Collects the result of attempting to release the permission represented by `permission`.

since: 2.26

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

##### Properties inherited from GPermission (3)

###### Gio.Permission:allowed

`TRUE` if the caller currently has permission to perform the action that `permission` represents the permission to perform.

since: 2.0

###### Gio.Permission:can-acquire

`TRUE` if it is generally possible to acquire the permission by calling g_permission_acquire().

since: 2.0

###### Gio.Permission:can-release

`TRUE` if it is generally possible to release the permission by calling g_permission_release().

since: 2.0

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

since: 2.0