ProjectManager
extends ProjectManagerAbstraction
in package
This Manager contains all functions related to Project AND Quotas for project.
As quotas are deeply tied to the project itself, we prefered to have all functionalities in one file
Table of Contents
- $errorLogName : string
- $warningLogName : string
- $apiVersion : string
- API Version
- $authenticationManager : AuthenticationManager
- The authentication manager, used to interact with Open Stack APIs
- $jobsLogName : string
- The name of the log in which we are going to log actions performed by jobs
- __construct() : mixed
- The Service constructor
- askForIncreaseQuota() : array<string|int, mixed>|null
- delete() : bool
- fromOpenStack() : Project
- Fill model from OpenStack
- getAuthenticationManager() : AuthenticationManager
- getQuotaState() : array<string|int, array<string|int, mixed>>
- Retrieve
- grantUserRole() : bool
- hasChanged() : bool
- import() : Project
- list() : Generator
- logEntry() : Activity
- logEntryWithoutModel() : Activity
- logError() : Activity
- logWarning() : Activity
- refresh() : bool
- retrieveOrImport() : Project
- revokeUserRole() : bool
- setAuthenticationManager() : OpenStackObjectManager
- toOpenStack() : Project
- Fill OpenStack from model
- toOpenStackArray() : array<string|int, mixed>
- Prepare an array to be used vs OpenStack
- log() : array<string|int, Activity>
- create() : void
- getIdentityService() : Service
- getOpenStackProject() : Project
- relatedFromOpenStack() : void
- Fetch related models from OpenStack - BlockStorage Quota - Compute Quota - Networking Quota
- update() : void
Properties
$errorLogName
public
static string
$errorLogName
= "error"
$warningLogName
public
static string
$warningLogName
= "warning"
$apiVersion
API Version
protected
static string
$apiVersion
= 'v1'
$authenticationManager
The authentication manager, used to interact with Open Stack APIs
protected
AuthenticationManager
$authenticationManager
$jobsLogName
The name of the log in which we are going to log actions performed by jobs
protected
string
$jobsLogName
= "jobs"
Methods
__construct()
The Service constructor
public
__construct(AuthenticationManager $authenticationManager) : mixed
Parameters
- $authenticationManager : AuthenticationManager
Return values
mixed —askForIncreaseQuota()
public
askForIncreaseQuota(Project $project, string $reason) : array<string|int, mixed>|null
Parameters
- $project : Project
- $reason : string
Return values
array<string|int, mixed>|null —delete()
public
delete(Project $project) : bool
Parameters
- $project : Project
Tags
Return values
bool —fromOpenStack()
Fill model from OpenStack
public
fromOpenStack(Project $project, Project $openStackProject) : Project
Parameters
- $project : Project
- $openStackProject : Project
Tags
Return values
Project —getAuthenticationManager()
public
getAuthenticationManager() : AuthenticationManager
Return values
AuthenticationManager —getQuotaState()
Retrieve
public
getQuotaState(Project $project) : array<string|int, array<string|int, mixed>>
Parameters
- $project : Project
Return values
array<string|int, array<string|int, mixed>> —grantUserRole()
public
grantUserRole(Project $project, User $user, Role $role) : bool
Parameters
Tags
Return values
bool —hasChanged()
public
hasChanged(Project $project) : bool
Parameters
- $project : Project
Tags
Return values
bool —import()
public
import(string $external_id) : Project
Parameters
- $external_id : string
Tags
Return values
Project —list()
public
list() : Generator
Tags
Return values
Generator —logEntry()
public
static logEntry(Model $model, array<string|int, mixed> $properties, string $description, string $event, string $logName) : Activity
Parameters
- $model : Model
- $properties : array<string|int, mixed>
- $description : string
- $event : string
- $logName : string
Return values
Activity —logEntryWithoutModel()
public
static logEntryWithoutModel(array<string|int, mixed> $properties, string $description, string $event, string $logName) : Activity
Parameters
- $properties : array<string|int, mixed>
- $description : string
- $event : string
- $logName : string
Return values
Activity —logError()
public
static logError(Model $model, array<string|int, mixed> $properties, string $description, string $event) : Activity
Parameters
- $model : Model
- $properties : array<string|int, mixed>
- $description : string
- $event : string
Return values
Activity —logWarning()
public
static logWarning(Model $model, array<string|int, mixed> $properties, string $description, string $event) : Activity
Parameters
- $model : Model
- $properties : array<string|int, mixed>
- $description : string
- $event : string
Return values
Activity —refresh()
public
refresh(Project $project[, Project|OperatorResource|null $openStackProject = null ]) : bool
Parameters
- $project : Project
- $openStackProject : Project|OperatorResource|null = null
Return values
bool —retrieveOrImport()
public
retrieveOrImport(string $external_id[, bool $refresh = false ]) : Project
Parameters
- $external_id : string
- $refresh : bool = false
Tags
Return values
Project —revokeUserRole()
public
revokeUserRole(Project $project, User $user, Role $role) : bool
Parameters
Tags
Return values
bool —setAuthenticationManager()
public
setAuthenticationManager([AuthenticationManager|null $authenticationManager = null ]) : OpenStackObjectManager
Parameters
- $authenticationManager : AuthenticationManager|null = null
Return values
OpenStackObjectManager —toOpenStack()
Fill OpenStack from model
public
toOpenStack(Project $project, Project $openStackProject) : Project
Parameters
- $project : Project
- $openStackProject : Project
Return values
Project —toOpenStackArray()
Prepare an array to be used vs OpenStack
public
toOpenStackArray(Project $project) : array<string|int, mixed>
Parameters
- $project : Project
Return values
array<string|int, mixed> —log()
protected
log(Model|array<string|int, mixed> $models, array<string|int, mixed> $properties, string $description[, null $logName = null ]) : array<string|int, Activity>
Parameters
- $models : Model|array<string|int, mixed>
- $properties : array<string|int, mixed>
- $description : string
- $logName : null = null
Return values
array<string|int, Activity> —create()
private
create(Project $project) : void
Parameters
- $project : Project
Tags
Return values
void —getIdentityService()
private
getIdentityService() : Service
Return values
Service —getOpenStackProject()
private
getOpenStackProject(string $id[, bool $retrieve = false ]) : Project
Parameters
- $id : string
- $retrieve : bool = false
Tags
Return values
Project —relatedFromOpenStack()
Fetch related models from OpenStack - BlockStorage Quota - Compute Quota - Networking Quota
private
relatedFromOpenStack(Project $project[, bool $setDefaults = false ]) : void
Parameters
- $project : Project
- $setDefaults : bool = false
Tags
Return values
void —update()
private
update(Project $project) : void
Parameters
- $project : Project