PluginsService
in package
implements
PluginsServiceInterface
uses
BcContainerTrait
Class PluginsService
Table of Contents
Interfaces
- PluginsServiceInterface
- Interface PluginsServiceInterface
Properties
- $Plugins : PluginsTable
- $Plugins : PluginsTable|Table
- Plugins Table
Methods
- __construct() : mixed
- PluginsService constructor.
- add() : string
- プラグインをアップロードする
- attach() : bool
- プラグインを有効にする
- attachAllFromIds() : mixed
- 複数のIDからプラグインを有効化する
- batch() : bool
- 一括処理
- changePriority() : bool
- 優先度を変更する
- detach() : bool
- プラグインを無効にする
- detachAll() : array<string|int, mixed>
- プラグインを全て無効化する
- get() : EntityInterface
- プラグインを取得する
- getAvailableCoreVersion() : bool|mixed|string
- 利用可能なコアの最新のバーションを取得
- getAvailableCoreVersionInfo() : array<string|int, mixed>
- 取得可能なコアのバージョン情報を取得
- getByName() : array<string|int, mixed>|EntityInterface|null
- プラグイン名からプラグインエンティティを取得
- getCoreUpdate() : void
- コアの最新版を取得する tmp/update に最新版をダウンロードする
- getIndex() : array<string|int, mixed>
- プラグイン一覧を取得
- getInstallStatusMessage() : string
- インストールに関するメッセージを取得する
- getMarketPlugins() : array<string|int, mixed>|mixed
- baserマーケットのプラグイン一覧を取得する
- getNamesById() : array<string|int, mixed>
- IDを指定して名前リストを取得する
- getService() : array<string|int, mixed>|mixed|object
- Get Service
- getVersion() : mixed|string
- バージョンを取得する
- hasService() : bool
- Has Service
- install() : bool|null
- プラグインをインストールする
- isAvailableCoreUpdates() : array<string|int, mixed>|mixed
- 利用可能なコアのバージョン群を取得
- resetDb() : void
- データベースをリセットする
- rollbackCore() : void
- コアファイルをロールバックする
- uninstall() : void
- プラグインを削除する
- update() : bool
- プラグインをアップデートする
- updateCore() : mixed
- BaserCoreをアップデートする
- updateCoreFiles() : void
- コアファイルを更新
Properties
$Plugins
public
PluginsTable
$Plugins
$Plugins
Plugins Table
public
PluginsTable|Table
$Plugins
Methods
__construct()
PluginsService constructor.
public
__construct() : mixed
Tags
add()
プラグインをアップロードする
public
add(array<string|int, mixed> $postData) : string
POSTデータにて キーfile
で Zipファイルをアップロードとすると、
/plugins/ 内に、Zipファイルを展開して配置する。
エラー
post_max_size を超えた場合、サーバーに設定されているサイズ制限を超えた場合、 Zipファイルの展開に失敗した場合は、Exception を発生。
リネーム処理
展開後のフォルダー名はアッパーキャメルケースにリネームする。 既に /plugins/ 内に同名のプラグインが存在する場合には、数字付きのディレクトリ名(PluginName2)にリネームする。 数字付きのディレクトリ名にリネームする際、プラグイン内の Plugin クラスの namespace もリネームする。
Parameters
- $postData : array<string|int, mixed>
Tags
Return values
string —Zip を展開したフォルダ名
attach()
プラグインを有効にする
public
attach(string $name) : bool
Parameters
- $name : string
Tags
Return values
boolattachAllFromIds()
複数のIDからプラグインを有効化する
public
attachAllFromIds(mixed $ids) : mixed
Parameters
- $ids : mixed
Tags
batch()
一括処理
public
batch(string $method, array<string|int, mixed> $ids) : bool
Parameters
- $method : string
- $ids : array<string|int, mixed>
Tags
Return values
boolchangePriority()
優先度を変更する
public
changePriority(int $id, int $offset[, array<string|int, mixed> $conditions = [] ]) : bool
Parameters
- $id : int
- $offset : int
- $conditions : array<string|int, mixed> = []
Tags
Return values
booldetach()
プラグインを無効にする
public
detach(string $name) : bool
Parameters
- $name : string
Tags
Return values
booldetachAll()
プラグインを全て無効化する
public
detachAll() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —無効化したIDのリスト
get()
プラグインを取得する
public
get(int $id) : EntityInterface
Parameters
- $id : int
Tags
Return values
EntityInterfacegetAvailableCoreVersion()
利用可能なコアの最新のバーションを取得
public
getAvailableCoreVersion() : bool|mixed|string
Tags
Return values
bool|mixed|stringgetAvailableCoreVersionInfo()
取得可能なコアのバージョン情報を取得
public
getAvailableCoreVersionInfo() : array<string|int, mixed>
BcApp.coreReleaseUrl
で、Packagist よりリリース情報を取得し、
キャッシュ _bc_update_
の coreReleaseInfo
として保存する。
アップデート対象バージョンの取得条件
- 同じメジャーバージョンであること
- 現在のパッケージののバージョンが開発版でないこと
- アップデートバージョンが現在のパッケージのバージョンより大きいこと
Tags
Return values
array<string|int, mixed> —-
latest
: 最新バージョン -
versions
: 取得可能なコアのバージョンリスト
getByName()
プラグイン名からプラグインエンティティを取得
public
getByName(string $name) : array<string|int, mixed>|EntityInterface|null
Parameters
- $name : string
Tags
Return values
array<string|int, mixed>|EntityInterface|nullgetCoreUpdate()
コアの最新版を取得する tmp/update に最新版をダウンロードする
public
getCoreUpdate(string $targetVersion, string $php[, bool|null $force = false ]) : void
Parameters
- $targetVersion : string
- $php : string
- $force : bool|null = false
Tags
getIndex()
プラグイン一覧を取得
public
getIndex(string $sortMode) : array<string|int, mixed>
Parameters
- $sortMode : string
Tags
Return values
array<string|int, mixed> —$plugins
getInstallStatusMessage()
インストールに関するメッセージを取得する
public
getInstallStatusMessage(mixed $pluginName) : string
Parameters
- $pluginName : mixed
Tags
Return values
stringgetMarketPlugins()
baserマーケットのプラグイン一覧を取得する
public
getMarketPlugins() : array<string|int, mixed>|mixed
Tags
Return values
array<string|int, mixed>|mixedgetNamesById()
IDを指定して名前リストを取得する
public
getNamesById(mixed $ids) : array<string|int, mixed>
Parameters
- $ids : mixed
Tags
Return values
array<string|int, mixed>getService()
Get Service
public
getService(mixed $service) : array<string|int, mixed>|mixed|object
Parameters
- $service : mixed
Tags
Return values
array<string|int, mixed>|mixed|objectgetVersion()
バージョンを取得する
public
getVersion(mixed $name) : mixed|string
Parameters
- $name : mixed
Tags
Return values
mixed|stringhasService()
Has Service
public
hasService(mixed $service) : bool
Parameters
- $service : mixed
Tags
Return values
boolinstall()
プラグインをインストールする
public
install(string $name[, bool $permission = true ][, string $connection = 'default' ]) : bool|null
Parameters
- $name : string
-
プラグイン名
- $permission : bool = true
-
アクセスルールを作るか作らないか
- $connection : string = 'default'
-
test connection指定用
Tags
Return values
bool|nullisAvailableCoreUpdates()
利用可能なコアのバージョン群を取得
public
isAvailableCoreUpdates() : array<string|int, mixed>|mixed
Tags
Return values
array<string|int, mixed>|mixedresetDb()
データベースをリセットする
public
resetDb(string $name[, string $connection = 'default' ]) : void
Parameters
- $name : string
- $connection : string = 'default'
Tags
rollbackCore()
コアファイルをロールバックする
public
rollbackCore(string $currentVersion, string $php) : void
Parameters
- $currentVersion : string
- $php : string
Tags
uninstall()
プラグインを削除する
public
uninstall(string $name[, array<string|int, mixed> $connection = 'default' ]) : void
Parameters
- $name : string
- $connection : array<string|int, mixed> = 'default'
Tags
update()
プラグインをアップデートする
public
update(string $name[, string $connection = 'default' ]) : bool
Parameters
- $name : string
- $connection : string = 'default'
-
コネクション名
Tags
Return values
boolupdateCore()
BaserCoreをアップデートする
public
updateCore(mixed $php[, string $connection = 'default' ]) : mixed
Parameters
- $php : mixed
- $connection : string = 'default'
Tags
updateCoreFiles()
コアファイルを更新
public
updateCoreFiles() : void