2024-04-12 15:17:05 +00:00
|
|
|
```
|
|
|
|
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
|
|
|
|
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
|
|
|
|
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
|
|
|
|
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
|
|
|
|
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
|
|
|
|
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
|
|
|
|
```
|
|
|
|
# final class JoomlaPower (Details)
|
|
|
|
> namespace: **VDM\Joomla\Componentbuilder\Compiler**
|
|
|
|
```uml
|
|
|
|
@startuml
|
|
|
|
class JoomlaPower << (F,LightGreen) >> #RoyalBlue {
|
|
|
|
+ array $active
|
|
|
|
+ array $namespace
|
|
|
|
+ array $superpowers
|
|
|
|
# string $fixUrl
|
|
|
|
# array $state
|
|
|
|
# array $retry
|
|
|
|
# Config $config
|
|
|
|
# Placeholder $placeholder
|
|
|
|
# Customcode $customcode
|
|
|
|
# Gui $gui
|
|
|
|
# Superpower $superpower
|
|
|
|
# $db
|
|
|
|
# $app
|
|
|
|
+ __construct(Config $config, Placeholder $placeholder, ...)
|
|
|
|
+ load(array $guids) : void
|
|
|
|
+ get(string $guid, int $build) : ?object
|
|
|
|
- set(string $guid) : bool
|
2024-04-16 15:05:43 +00:00
|
|
|
- extractLastNameFromNamespace(string $namespace) : ?string
|
|
|
|
- removeLastNameFromNamespace(string $namespace) : string
|
2024-04-12 15:17:05 +00:00
|
|
|
- isPowerSet(string $guid) : bool
|
|
|
|
- isGuidValid(string $guid) : bool
|
|
|
|
- getPowerData(string $guid) : ?object
|
|
|
|
- getCleanNamespace(string $namespace) : string
|
|
|
|
- getUseNamespace(string $namespace, string $as = 'default') : string
|
|
|
|
- setSuperPowers(string $guid) : void
|
|
|
|
}
|
|
|
|
|
|
|
|
note right of JoomlaPower::__construct
|
|
|
|
Constructor.
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
|
|
|
|
arguments:
|
|
|
|
Config $config
|
|
|
|
Placeholder $placeholder
|
|
|
|
Customcode $customcode
|
|
|
|
Gui $gui
|
|
|
|
Superpower $superpower
|
|
|
|
end note
|
|
|
|
|
|
|
|
note left of JoomlaPower::load
|
|
|
|
load all the powers linked to this component
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: void
|
|
|
|
end note
|
|
|
|
|
|
|
|
note right of JoomlaPower::get
|
|
|
|
Get a power
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: ?object
|
|
|
|
end note
|
|
|
|
|
|
|
|
note left of JoomlaPower::set
|
|
|
|
Set a power
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: bool
|
|
|
|
end note
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
note right of JoomlaPower::extractLastNameFromNamespace
|
|
|
|
Extracts the last part of a namespace string, which is typically the class name.
|
|
|
|
|
|
|
|
since: 3.2.1
|
|
|
|
return: ?string
|
|
|
|
end note
|
|
|
|
|
|
|
|
note left of JoomlaPower::removeLastNameFromNamespace
|
|
|
|
Removes the last name from the namespace.
|
|
|
|
|
|
|
|
since: 3.2.1
|
|
|
|
return: string
|
|
|
|
end note
|
|
|
|
|
2024-04-12 15:17:05 +00:00
|
|
|
note right of JoomlaPower::isPowerSet
|
|
|
|
Check if the power is already set
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: bool
|
|
|
|
end note
|
|
|
|
|
|
|
|
note left of JoomlaPower::isGuidValid
|
|
|
|
Validate the GUID
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: bool
|
|
|
|
end note
|
|
|
|
|
|
|
|
note right of JoomlaPower::getPowerData
|
|
|
|
Get the power data from the database
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: ?object
|
|
|
|
end note
|
|
|
|
|
2024-04-15 04:03:20 +00:00
|
|
|
note left of JoomlaPower::getCleanNamespace
|
2024-04-12 15:17:05 +00:00
|
|
|
Get Clean Namespace without use or ; as part of the name space
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: string
|
|
|
|
end note
|
|
|
|
|
2024-04-15 04:03:20 +00:00
|
|
|
note right of JoomlaPower::getUseNamespace
|
2024-04-12 15:17:05 +00:00
|
|
|
Get [use Namespace\Class;]
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: string
|
|
|
|
end note
|
|
|
|
|
2024-04-15 04:03:20 +00:00
|
|
|
note left of JoomlaPower::setSuperPowers
|
2024-04-12 15:17:05 +00:00
|
|
|
Set the super powers of this power
|
|
|
|
|
2024-04-16 15:05:43 +00:00
|
|
|
since: 3.2.1
|
2024-04-12 15:17:05 +00:00
|
|
|
return: void
|
|
|
|
end note
|
|
|
|
|
|
|
|
@enduml
|
|
|
|
```
|
|
|
|
|
|
|
|
---
|
|
|
|
```
|
|
|
|
██╗ ██████╗██████╗
|
|
|
|
██║██╔════╝██╔══██╗
|
|
|
|
██║██║ ██████╔╝
|
|
|
|
██ ██║██║ ██╔══██╗
|
|
|
|
╚█████╔╝╚██████╗██████╔╝
|
|
|
|
╚════╝ ╚═════╝╚═════╝
|
|
|
|
```
|
|
|
|
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)
|
|
|
|
|