aem-plugin / com.cognifide.gradle.aem.common.instance.service.pkg / PackageManager

PackageManager

class PackageManager : InstanceService

Allows to communicate with CRX Package Manager.

Constructors

<init>

Allows to communicate with CRX Package Manager.

PackageManager(sync: InstanceSync)

Properties

downloadRetry

Repeat download when failed (brute-forcing).

var downloadRetry: Retry

errors

Define patterns for known exceptions which could be thrown during package installation making it impossible to succeed.

val errors: ListProperty<String!>!

installRecursive

Determines if when on package install, sub-packages included in CRX package content should be also installed.

val installRecursive: Property<Boolean!>!

installRetry

Repeat install when failed (brute-forcing).

var installRetry: Retry

listRefresh

Packages are installed lazy which means already installed will no be installed again. By default, information about currently installed packages is being retrieved from AEM only once.

val listRefresh: Property<Boolean!>!

listRetry

Repeat listing package when failed (brute-forcing).

var listRetry: Retry

responseBuffer

Determines number of lines to process at once during reading Package Manager HTML responses.

val responseBuffer: Property<Int!>!

snapshots

CRX package name conventions (with wildcard) indicating that package can change over time while having same version specified. Affects CRX packages composed and satisfied.

val snapshots: ListProperty<String!>!

uploadForce

Force upload CRX package regardless if it was previously uploaded.

val uploadForce: Property<Boolean!>!

uploadRetry

Repeat upload when failed (brute-forcing).

var uploadRetry: Retry

workflowToggle

Allows to temporarily enable or disable workflows during CRX package deployment.

val workflowToggle: MapProperty<String!, Boolean!>!

Functions

activate

fun activate(file: File): UploadResponse
fun activate(remotePath: String): UploadResponse

build

fun build(remotePath: String): BuildResponse

delete

fun delete(file: File): DeleteResponse
fun delete(remotePath: String): DeleteResponse

deploy

fun deploy(file: File, activate: Boolean = false): Unit

distribute

fun distribute(file: File): Unit

download

Create package on the fly, upload it to instance then build it. Next built package is downloaded - replacing initially created package. Finally built package is deleted on instance (preventing messing up).

fun download(definition: PackageDefinition.() -> Unit): File
fun download(definition: PackageDefinition): Filefun download(remotePath: String, targetFile: File = common.temporaryFile(FilenameUtils.getName(remotePath))): Unit

find

fun find(file: File): Package?
fun find(definition: VaultDefinition): Package?
fun find(group: String, name: String, version: String): Package?

get

fun get(file: File): Package
fun get(definition: VaultDefinition): Package
fun get(group: String, name: String, version: String): Package

install

fun install(file: File): InstallResponse
fun install(remotePath: String): InstallResponse

isSnapshot

fun isSnapshot(file: File): Boolean

list

fun list(): ListResponse

purge

fun purge(file: File): Unit

uninstall

fun uninstall(file: File): UninstallResponse
fun uninstall(remotePath: String): UninstallResponse

upload

fun upload(file: File): UploadResponse

Companion Object Properties

HTML_PATH

const val HTML_PATH: String

JSON_PATH

const val JSON_PATH: String

LIST_JSON

const val LIST_JSON: String

PATH

const val PATH: String