class GoogleApiServiceClient in Google API PHP Client 8.4
Same name and namespace in other branches
- 8.3 src/Entity/GoogleApiServiceClient.php \Drupal\google_api_client\Entity\GoogleApiServiceClient
Defines the GoogleApiServiceClient entity.
This is the main definition of the entity type. From it, an entityType is derived. The most important properties in this example are listed below.
@ConfigEntityType( id = "google_api_service_client", label = @Translation("Google Api Service Client"), handlers = { "list_builder" = "Drupal\google_api_client\Entity\Controller\GoogleApiServiceClientListBuilder", "form" = { "add" = "Drupal\google_api_client\Form\GoogleApiServiceClientForm", "edit" = "Drupal\google_api_client\Form\GoogleApiServiceClientForm", "delete" = "Drupal\google_api_client\Form\GoogleApiServiceClientDeleteForm", }, }, config_prefix = "google_api_service_client", admin_permission = "administer google api settings", entity_keys = { "id" = "id", "label" = "label", }, config_export = { "id", "label", "auth_config", "access_token", "services", "scopes" }, links = { "canonical" = "/google_api_service_client/{google_api_service_client}", "edit-form" = "/admin/config/services/google_api_service_client/{google_api_service_client}/edit", "delete-form" = "/admin/config/services/google_api_service_client/{google_api_service_client}/delete", "collection" = "/admin/config/services/google_api_service_client" }, )
The 'links' above are defined by their path. For core to find the corresponding route, the route name must follow the correct pattern:
entity.<entity-name>.<link-name> (replace dashes with underscores) Example: 'entity.google_api_service_client.canonical'
See routing file above for the corresponding implementation
The 'GoogleApiServiceClient' class defines methods and fields for the google_api_service_client entity.
Being derived from the ContentEntityBase class, we can override the methods we want. In our case we want to provide access to the standard fields about creation and changed time stamps.
Our interface (see GoogleApiServiceClientInterface) also exposes the EntityOwnerInterface. This allows us to provide methods for setting and providing ownership information.
The most important part is the definitions of the field properties for this entity type. These are of the same type as fields added through the GUI, but they can by changed in code. In the definition we can define if the user with the rights privileges can influence the presentation (view, edit) of each field.
Hierarchy
- class \Drupal\Core\Entity\EntityBase implements EntityInterface uses RefinableCacheableDependencyTrait, DependencySerializationTrait
- class \Drupal\Core\Config\Entity\ConfigEntityBase implements ConfigEntityInterface uses SynchronizableEntityTrait, PluginDependencyTrait
- class \Drupal\google_api_client\Entity\GoogleApiServiceClient implements GoogleApiServiceClientInterface
- class \Drupal\Core\Config\Entity\ConfigEntityBase implements ConfigEntityInterface uses SynchronizableEntityTrait, PluginDependencyTrait
Expanded class hierarchy of GoogleApiServiceClient
File
- src/
Entity/ GoogleApiServiceClient.php, line 76
Namespace
Drupal\google_api_client\EntityView source
class GoogleApiServiceClient extends ConfigEntityBase implements GoogleApiServiceClientInterface {
/**
* The machine_name.
*
* @var string
*/
protected $id;
/**
* The Name for this account.
*
* @var string
*/
protected $label;
/**
* The credentials for account.
*
* @var string
*/
protected $auth_config;
/**
* The access_token for account.
*
* @var string
*/
protected $access_token;
/**
* The services for account.
*
* @var array
*/
protected $services;
/**
* The scopes for account.
*
* @var array
*/
protected $scopes;
/**
* {@inheritdoc}
*/
public function getId() {
return $this->id;
}
/**
* {@inheritdoc}
*/
public function getName() {
return $this->label;
}
/**
* {@inheritdoc}
*/
public function getAuthConfig() {
return Json::decode($this->auth_config);
}
/**
* {@inheritdoc}
*/
public function getAccessToken() {
return Json::decode($this->access_token);
}
/**
* {@inheritdoc}
*/
public function getScopes($url = FALSE) {
if ($url) {
$services = $this
->getServices();
$all_scopes = google_api_client_google_services_scopes($services);
$return = [];
foreach ($this->scopes as $scope) {
foreach ($all_scopes as $scopes) {
if (isset($scopes[$scope])) {
$return[] = $scopes[$scope];
break;
}
}
}
return $return;
}
else {
return $this->scopes;
}
}
/**
* {@inheritdoc}
*/
public function getServices() {
return $this->services;
}
/**
* Function sets id of the service account.
*
* @param string $id
* Pass id of the service account.
*
* @return bool
* Returns true if the operation is successful.
*/
public function setId($id) {
return $this->id = $id;
}
/**
* Function sets Name of the service account.
*
* @param string $name
* Pass the account name.
*
* @return bool
* Returns true if the operation is successful.
*/
public function setName($name) {
return $this->label = $name;
}
/**
* {@inheritdoc}
*/
public function setAuthConfig($config) {
if (is_array($config)) {
$config = Json::encode($config);
}
return $this->auth_config = $config;
}
/**
* {@inheritdoc}
*/
public function setAccessToken(array $access_token) {
return $this->access_token = Json::encode($access_token);
}
/**
* {@inheritdoc}
*/
public function setScopes(array $scopes) {
return $this->scopes = $scopes;
}
/**
* {@inheritdoc}
*/
public function setServices(array $services) {
return $this->services = $services;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
CacheableDependencyTrait:: |
protected | property | Cache contexts. | |
CacheableDependencyTrait:: |
protected | property | Cache max-age. | |
CacheableDependencyTrait:: |
protected | property | Cache tags. | |
CacheableDependencyTrait:: |
protected | function | Sets cacheability; useful for value object constructors. | |
ConfigEntityBase:: |
private | property | Whether the config is being deleted by the uninstall process. | |
ConfigEntityBase:: |
protected | property | The language code of the entity's default language. | |
ConfigEntityBase:: |
protected | property | The original ID of the configuration entity. | |
ConfigEntityBase:: |
protected | property | The enabled/disabled status of the configuration entity. | 4 |
ConfigEntityBase:: |
protected | property | Third party entity settings. | |
ConfigEntityBase:: |
protected | property | Trust supplied data and not use configuration schema on save. | |
ConfigEntityBase:: |
protected | property | The UUID for this entity. | |
ConfigEntityBase:: |
protected | property | Information maintained by Drupal core about configuration. | |
ConfigEntityBase:: |
protected | function | Overrides \Drupal\Core\Entity\DependencyTrait:addDependency(). | |
ConfigEntityBase:: |
public | function |
Calculates dependencies and stores them in the dependency property. Overrides ConfigEntityInterface:: |
13 |
ConfigEntityBase:: |
public | function |
Creates a duplicate of the entity. Overrides EntityBase:: |
1 |
ConfigEntityBase:: |
public | function |
Disables the configuration entity. Overrides ConfigEntityInterface:: |
1 |
ConfigEntityBase:: |
public | function |
Enables the configuration entity. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Returns the value of a property. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Returns the cache tags that should be used to invalidate caches. Overrides EntityBase:: |
1 |
ConfigEntityBase:: |
public | function |
Gets the configuration dependency name. Overrides EntityBase:: |
|
ConfigEntityBase:: |
protected static | function | Gets the configuration manager. | |
ConfigEntityBase:: |
public | function |
Gets the configuration target identifier for the entity. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Gets the configuration dependencies. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Gets the original ID. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Gets the list of third parties that store information. Overrides ThirdPartySettingsInterface:: |
|
ConfigEntityBase:: |
public | function |
Gets the value of a third-party setting. Overrides ThirdPartySettingsInterface:: |
|
ConfigEntityBase:: |
public | function |
Gets all third-party settings of a given module. Overrides ThirdPartySettingsInterface:: |
|
ConfigEntityBase:: |
protected | function | Gets the typed config manager. | |
ConfigEntityBase:: |
public | function |
Gets whether on not the data is trusted. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
protected static | function |
Override to never invalidate the individual entities' cache tags; the
config system already invalidates them. Overrides EntityBase:: |
|
ConfigEntityBase:: |
protected | function |
Override to never invalidate the entity's cache tag; the config system
already invalidates it. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Checks whether this entity is installable. Overrides ConfigEntityInterface:: |
2 |
ConfigEntityBase:: |
public | function |
Overrides Entity::isNew(). Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Returns whether this entity is being changed during the uninstall process. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Deprecated way of generating a link to the entity. See toLink(). Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Informs the entity that entities it depends on will be deleted. Overrides ConfigEntityInterface:: |
7 |
ConfigEntityBase:: |
public static | function |
Acts on entities before they are deleted and before hooks are invoked. Overrides EntityBase:: |
8 |
ConfigEntityBase:: |
public | function |
Acts on an entity before the presave hook is invoked. Overrides EntityBase:: |
13 |
ConfigEntityBase:: |
public | function |
Saves an entity permanently. Overrides EntityBase:: |
1 |
ConfigEntityBase:: |
public | function |
Sets the value of a property. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Sets the original ID. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Sets the status of the configuration entity. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Sets the value of a third-party setting. Overrides ThirdPartySettingsInterface:: |
|
ConfigEntityBase:: |
public | function | ||
ConfigEntityBase:: |
public static | function | Helper callback for uasort() to sort configuration entities by weight and label. | 6 |
ConfigEntityBase:: |
public | function |
Returns whether the configuration entity is enabled. Overrides ConfigEntityInterface:: |
4 |
ConfigEntityBase:: |
public | function |
Gets an array of all property values. Overrides EntityBase:: |
2 |
ConfigEntityBase:: |
public | function |
Gets the URL object for the entity. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Sets that the data should be trusted. Overrides ConfigEntityInterface:: |
|
ConfigEntityBase:: |
public | function |
Unsets a third-party setting. Overrides ThirdPartySettingsInterface:: |
|
ConfigEntityBase:: |
public | function |
Gets the public URL for this entity. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Gets the URL object for the entity. Overrides EntityBase:: |
|
ConfigEntityBase:: |
public | function |
Constructs an Entity object. Overrides EntityBase:: |
10 |
ConfigEntityBase:: |
public | function |
Overrides EntityBase:: |
4 |
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | Aliased as: traitSleep | 1 |
DependencySerializationTrait:: |
public | function | 2 | |
DependencyTrait:: |
protected | property | The object's dependencies. | |
DependencyTrait:: |
protected | function | Adds multiple dependencies. | |
DependencyTrait:: |
protected | function | Adds a dependency. Aliased as: addDependencyTrait | |
EntityBase:: |
protected | property | Boolean indicating whether the entity should be forced to be new. | |
EntityBase:: |
protected | property | The entity type. | |
EntityBase:: |
protected | property | A typed data object wrapping this entity. | |
EntityBase:: |
public | function |
Checks data value access. Overrides AccessibleInterface:: |
1 |
EntityBase:: |
public | function |
Gets the bundle of the entity. Overrides EntityInterface:: |
1 |
EntityBase:: |
public static | function |
Constructs a new entity object, without permanently saving it. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Deletes an entity permanently. Overrides EntityInterface:: |
2 |
EntityBase:: |
public | function |
Enforces an entity to be new. Overrides EntityInterface:: |
|
EntityBase:: |
protected | function | Gets the entity manager. | |
EntityBase:: |
protected | function | Gets the entity type bundle info service. | |
EntityBase:: |
protected | function | Gets the entity type manager. | |
EntityBase:: |
public | function |
The cache contexts associated with this object. Overrides CacheableDependencyTrait:: |
|
EntityBase:: |
public | function |
The maximum age for which this object may be cached. Overrides CacheableDependencyTrait:: |
|
EntityBase:: |
public | function |
The cache tags associated with this object. Overrides CacheableDependencyTrait:: |
|
EntityBase:: |
public | function |
Gets the key that is used to store configuration dependencies. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Gets the entity type definition. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Gets the ID of the type of the entity. Overrides EntityInterface:: |
|
EntityBase:: |
protected | function | The list cache tags to invalidate for this entity. | |
EntityBase:: |
public | function |
Gets a typed data object for this entity object. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Indicates if a link template exists for a given key. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Gets the identifier. Overrides EntityInterface:: |
11 |
EntityBase:: |
public | function |
Gets the label of the entity. Overrides EntityInterface:: |
6 |
EntityBase:: |
public | function |
Gets the language of the entity. Overrides EntityInterface:: |
1 |
EntityBase:: |
protected | function | Gets the language manager. | |
EntityBase:: |
protected | function | Gets an array link templates. | 1 |
EntityBase:: |
public static | function |
Loads an entity. Overrides EntityInterface:: |
|
EntityBase:: |
public static | function |
Loads one or more entities. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Acts on a created entity before hooks are invoked. Overrides EntityInterface:: |
4 |
EntityBase:: |
public static | function |
Acts on deleted entities before the delete hook is invoked. Overrides EntityInterface:: |
16 |
EntityBase:: |
public static | function |
Acts on loaded entities. Overrides EntityInterface:: |
2 |
EntityBase:: |
public | function |
Acts on a saved entity before the insert or update hook is invoked. Overrides EntityInterface:: |
14 |
EntityBase:: |
public static | function |
Changes the values of an entity before it is created. Overrides EntityInterface:: |
5 |
EntityBase:: |
public | function |
Gets a list of entities referenced by this entity. Overrides EntityInterface:: |
1 |
EntityBase:: |
public | function |
Generates the HTML for a link to this entity. Overrides EntityInterface:: |
|
EntityBase:: |
public | function |
Gets a list of URI relationships supported by this entity. Overrides EntityInterface:: |
|
EntityBase:: |
protected | function | Gets an array of placeholders for this entity. | 2 |
EntityBase:: |
public | function |
Gets the entity UUID (Universally Unique Identifier). Overrides EntityInterface:: |
1 |
EntityBase:: |
protected | function | Gets the UUID generator. | |
GoogleApiServiceClient:: |
protected | property | The access_token for account. | |
GoogleApiServiceClient:: |
protected | property | The credentials for account. | |
GoogleApiServiceClient:: |
protected | property | The machine_name. | |
GoogleApiServiceClient:: |
protected | property | The Name for this account. | |
GoogleApiServiceClient:: |
protected | property | The scopes for account. | |
GoogleApiServiceClient:: |
protected | property | The services for account. | |
GoogleApiServiceClient:: |
public | function |
Function returns Json of access_token. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function |
Function returns Json file of the account. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function | ||
GoogleApiServiceClient:: |
public | function | ||
GoogleApiServiceClient:: |
public | function |
Function returns the Scopes for the account. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function |
Function returns the Services for the account. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function |
Function set Access Token. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function |
Function set Json File. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function | Function sets id of the service account. | |
GoogleApiServiceClient:: |
public | function | Function sets Name of the service account. | |
GoogleApiServiceClient:: |
public | function |
Function set Scopes. Overrides GoogleApiServiceClientInterface:: |
|
GoogleApiServiceClient:: |
public | function |
Function set Services. Overrides GoogleApiServiceClientInterface:: |
|
PluginDependencyTrait:: |
protected | function | Calculates and adds dependencies of a specific plugin instance. | 1 |
PluginDependencyTrait:: |
protected | function | Calculates and returns dependencies of a specific plugin instance. | |
PluginDependencyTrait:: |
protected | function | Wraps the module handler. | 1 |
PluginDependencyTrait:: |
protected | function | Wraps the theme handler. | 1 |
RefinableCacheableDependencyTrait:: |
public | function | 1 | |
RefinableCacheableDependencyTrait:: |
public | function | ||
RefinableCacheableDependencyTrait:: |
public | function | ||
RefinableCacheableDependencyTrait:: |
public | function | ||
SynchronizableEntityTrait:: |
protected | property | Whether this entity is being created, updated or deleted through a synchronization process. | |
SynchronizableEntityTrait:: |
public | function | ||
SynchronizableEntityTrait:: |
public | function |