annacl v0.1.0 Annacl

Link to this section Summary

Functions

Callback implementation for Annacl.Behaviour.create_role/1.

Callback implementation for Annacl.Behaviour.get_role!/1.

Link to this section Functions

Link to this function

assign_role!(map, role_name)

Specs

assign_role!(%{performer_id: binary()}, binary()) ::
  {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.assign_role!/2.

Link to this function

assign_role_to_permission(permission, role)

Specs

assign_role_to_permission(
  Annacl.ACL.Permissions.Permission.t(),
  Annacl.ACL.Roles.Role.t()
) :: {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.assign_role_to_permission/2.

Link to this function

can?(map, permission_name)

Specs

can?(%{performer_id: binary()}, binary()) :: boolean()

Callback implementation for Annacl.Behaviour.can?/2.

Link to this function

create_permission(attrs)

Specs

create_permission(map()) :: {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.create_permission/1.

Link to this function

create_role(attrs)

Specs

create_role(map()) :: {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.create_role/1.

Link to this function

get_permission!(name)

Specs

get_permission!(binary()) :: Annacl.ACL.Permissions.Permission.t()

Callback implementation for Annacl.Behaviour.get_permission!/1.

Link to this function

get_role!(name)

Specs

get_role!(binary()) :: Annacl.ACL.Roles.Role.t()

Callback implementation for Annacl.Behaviour.get_role!/1.

Link to this function

grant_permission!(map, permission_name)

Specs

grant_permission!(%{performer_id: binary()}, binary()) ::
  {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.grant_permission!/2.

Link to this function

grant_permission_to_role(role, permission)

Specs

grant_permission_to_role(
  Annacl.ACL.Roles.Role.t(),
  Annacl.ACL.Permissions.Permission.t()
) :: {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.grant_permission_to_role/2.

Link to this function

has_role?(map, role_name)

Specs

has_role?(%{performer_id: binary()}, binary()) :: boolean()

Callback implementation for Annacl.Behaviour.has_role?/2.

Link to this function

list_permissions(map)

Specs

list_permissions(%{performer_id: binary()}) :: [
  Annacl.ACL.Permissions.Permission.t()
]
Link to this function

list_roles(map)

Specs

list_roles(%{performer_id: binary()}) :: [Annacl.ACL.Roles.Role.t()]
Link to this function

remove_role!(map, role_name)

Specs

remove_role!(%{performer_id: binary()}, binary()) ::
  {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.remove_role!/2.

Link to this function

remove_role_from_permission(permission, role)

Specs

remove_role_from_permission(
  Annacl.ACL.Permissions.Permission.t(),
  Annacl.ACL.Roles.Role.t()
) :: {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.remove_role_from_permission/2.

Link to this function

revoke_permission!(map, permission_name)

Specs

revoke_permission!(%{performer_id: binary()}, binary()) ::
  {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.revoke_permission!/2.

Link to this function

revoke_permission_from_role(role, permission)

Specs

revoke_permission_from_role(
  Annacl.ACL.Roles.Role.t(),
  Annacl.ACL.Permissions.Permission.t()
) :: {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.revoke_permission_from_role/2.

Link to this function

role_can?(role, permission)

Specs

role_can?(Annacl.ACL.Roles.Role.t(), Annacl.ACL.Permissions.Permission.t()) ::
  boolean()

Callback implementation for Annacl.Behaviour.role_can?/2.

Link to this function

update_role(role, attrs)

Specs

update_role(Annacl.ACL.Roles.Role.t(), map()) ::
  {:ok, any()} | {:error, Ecto.Changeset.t()}

Callback implementation for Annacl.Behaviour.update_role/2.