Package org.gitana.platform.client.platform

# Class AbstractPlatformDocumentImpl

java.lang.Object
org.gitana.platform.support.GitanaObjectImpl
org.gitana.platform.client.document.DocumentImpl
org.gitana.platform.client.platform.AbstractPlatformDocumentImpl

All Implemented Interfaces:
  `Serializable`, `Document`, `PlatformDocument`, `Copyable`, `Referenceable`, `TitleDescription`, `Transferable`, `TypedID`, `org.gitana.platform.GitanaObject`, `org.gitana.platform.JSONable`

Direct Known Subclasses:
  `AbstractApplicationDocumentImpl`, `AbstractDirectoryDocumentImpl`, `AbstractDomainDocumentImpl`, `AbstractRegistrarDocumentImpl`, `AbstractRepositoryDocumentImpl`, `AbstractVaultDocumentImpl`, `AbstractWebHostDocumentImpl`, `AuthenticationGrantImpl`, `BillingProviderConfigurationImpl`, `ClientImpl`, `ProjectImpl`, `StackImpl`

public abstract class AbstractPlatformDocumentImpl extends DocumentImpl implements PlatformDocument
Abstract implementation of a platform document.

Author:
  uzi
See Also:
  - Serialized Form

## Field Summary

### Fields inherited from class org.gitana.platform.support.GitanaObjectImpl

`serialVersionUID`

### Fields inherited from interface org.gitana.platform.client.document.Document

`FIELD_ID, SYSTEM, SYSTEM_CREATED_BY, SYSTEM_CREATED_ON, SYSTEM_MODIFIED_BY, SYSTEM_MODIFIED_ON`

### Fields inherited from interface org.gitana.platform.client.support.TitleDescription

`FIELD_DESCRIPTION, FIELD_TITLE`

## Constructor Summary

Constructors
Constructor
Description
`AbstractPlatformDocumentImpl(Platform platform, com.fasterxml.jackson.databind.node.ObjectNode obj, boolean isSaved)`

## Method Summary

Modifier and Type
Method
Description
`CopyJob`
`copy(TypedID targetContainer)`
Copies this object into the target container.
`CopyJob`
`copy(TypedID targetContainer, org.gitana.platform.services.transfer.TransferImportStrategy strategy, Map<String,Object> additionalConfiguration)`
Copies this object into the target container.
`CopyJob`
`copyAsync(TypedID targetContainer)`
Copies this object into the target container.
`CopyJob`
`copyAsync(TypedID targetContainer, org.gitana.platform.services.transfer.TransferImportStrategy strategy, Map<String,Object> additionalConfiguration)`
Copies this object into the target container.
`Archive`
`exportArchive(Vault vault, String groupId, String artifactId, String versionId)`
Exports synchronously and hands back the binary directly.
`Archive`
`exportArchive(Vault vault, String groupId, String artifactId, String versionId, org.gitana.platform.services.transfer.TransferExportConfiguration configuration)`
Exports synchronously and hands back the binary directly.
`TransferExportJob`
`exportArchive(Vault vault, String groupId, String artifactId, String versionId, org.gitana.platform.services.transfer.TransferExportConfiguration configuration, org.gitana.platform.services.transfer.TransferSchedule schedule)`
Exports either synchronously or asynchronously, returning the job.
`protected Cluster`
`getCluster()`
`protected Driver`
`getDriver()`
`protected ObjectFactory`
`getFactory()`
`Platform`
`getPlatform()`
`String`
`getPlatformId()`
`protected Remote`
`getRemote()`
`protected abstract String`
`getResourceUri()`
`TransferImportJob`
`importArchive(Archive archive)`
Imports an archive synchronously, returning the job.
`TransferImportJob`
`importArchive(Archive archive, org.gitana.platform.services.transfer.TransferImportConfiguration configuration)`
Imports an archive synchronously, returning the job.
`TransferImportJob`
`importArchive(Archive archive, org.gitana.platform.services.transfer.TransferImportConfiguration configuration, org.gitana.platform.services.transfer.TransferSchedule schedule)`
Imports either synchronously or asynchronously, returning the job.
`org.gitana.platform.services.reference.Reference`
`ref()`

### Methods inherited from class org.gitana.platform.client.document.DocumentImpl

`dateCreated, dateModified, getCreatedBy, getDescription, getId, getModifiedBy, getSystemObject, getTitle, isSaved, mergeProperties, mergePropertyIfExists, reload, reload, setDescription, setId, setSaved, setTitle`

### Methods inherited from class org.gitana.platform.support.GitanaObjectImpl

`_objectGetFloat, _objectGetInt, _objectGetLong, _objectGetObject, _objectGetString, _objectSet, get, getArray, getAsJsonNode, getBigDecimal, getBoolean, getDouble, getInt, getLong, getObject, getObject, getString, has, putAll, putAll, putObject, remove, set, toJSON, toJSONString, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.gitana.platform.client.document.Document

`dateCreated, dateModified, getCreatedBy, getId, getModifiedBy, getSystemObject, isSaved, reload, reload, setId, setSaved`

### Methods inherited from interface org.gitana.platform.GitanaObject

`get, getArray, getAsJsonNode, getBigDecimal, getBoolean, getDouble, getInt, getLong, getObject, getObject, getString, has, putAll, putAll, remove, set`

### Methods inherited from interface org.gitana.platform.JSONable

`toJSON, toJSONString`

### Methods inherited from interface org.gitana.platform.client.support.TitleDescription

`getDescription, getTitle, setDescription, setTitle`

### Methods inherited from interface org.gitana.platform.client.support.TypedID

`getId, getTypeId`

## Constructor Details

### AbstractPlatformDocumentImpl

public AbstractPlatformDocumentImpl(Platform platform, com.fasterxml.jackson.databind.node.ObjectNode obj, boolean isSaved)

## Method Details

### ref

public org.gitana.platform.services.reference.Reference ref()

Specified by:
  `ref` in interface `Referenceable`

### getResourceUri

protected abstract String getResourceUri()

### getFactory

protected ObjectFactory getFactory()

### getDriver

protected Driver getDriver()

### getRemote

protected Remote getRemote()

### getPlatform

public Platform getPlatform()

Specified by:
  `getPlatform` in interface `PlatformDocument`

### getPlatformId

public String getPlatformId()

Specified by:
  `getPlatformId` in interface `PlatformDocument`

### getCluster

protected Cluster getCluster()

### exportArchive

public Archive exportArchive(Vault vault, String groupId, String artifactId, String versionId)
Description copied from interface: `Transferable`
Exports synchronously and hands back the binary directly.

Specified by:
  `exportArchive` in interface `Transferable`
Parameters:
  `vault` -
  `groupId` -
  `artifactId` -
  `versionId` -
Returns:

### exportArchive

public Archive exportArchive(Vault vault, String groupId, String artifactId, String versionId, org.gitana.platform.services.transfer.TransferExportConfiguration configuration)
Description copied from interface: `Transferable`
Exports synchronously and hands back the binary directly.

Specified by:
  `exportArchive` in interface `Transferable`
Parameters:
  `vault` -
  `groupId` -
  `artifactId` -
  `versionId` -
  `configuration` -
Returns:

### exportArchive

public TransferExportJob exportArchive(Vault vault, String groupId, String artifactId, String versionId, org.gitana.platform.services.transfer.TransferExportConfiguration configuration, org.gitana.platform.services.transfer.TransferSchedule schedule)
Description copied from interface: `Transferable`
Exports either synchronously or asynchronously, returning the job.

Specified by:
  `exportArchive` in interface `Transferable`
Parameters:
  `vault` -
  `groupId` -
  `artifactId` -
  `versionId` -
  `configuration` -
  `schedule` -
Returns:

### importArchive

public TransferImportJob importArchive(Archive archive)
Description copied from interface: `Transferable`
Imports an archive synchronously, returning the job.

Specified by:
  `importArchive` in interface `Transferable`
Parameters:
  `archive` -
Returns:

### importArchive

public TransferImportJob importArchive(Archive archive, org.gitana.platform.services.transfer.TransferImportConfiguration configuration)
Description copied from interface: `Transferable`
Imports an archive synchronously, returning the job.

Specified by:
  `importArchive` in interface `Transferable`
Parameters:
  `archive` -
  `configuration` -
Returns:

### importArchive

public TransferImportJob importArchive(Archive archive, org.gitana.platform.services.transfer.TransferImportConfiguration configuration, org.gitana.platform.services.transfer.TransferSchedule schedule)
Description copied from interface: `Transferable`
Imports either synchronously or asynchronously, returning the job.

Specified by:
  `importArchive` in interface `Transferable`
Parameters:
  `archive` -
  `configuration` -
  `schedule` -
Returns:

### copy

public CopyJob copy(TypedID targetContainer)
Description copied from interface: `Copyable`
Copies this object into the target container.

Specified by:
  `copy` in interface `Copyable`
Parameters:
  `targetContainer` -
Returns:
  id of the resulting object

### copy

public CopyJob copy(TypedID targetContainer, org.gitana.platform.services.transfer.TransferImportStrategy strategy, Map<String,Object> additionalConfiguration)
Description copied from interface: `Copyable`
Copies this object into the target container.

Specified by:
  `copy` in interface `Copyable`
Parameters:
  `targetContainer` -
  `strategy` -
  `additionalConfiguration` -
Returns:
  id of the resulting object

### copyAsync

public CopyJob copyAsync(TypedID targetContainer)
Description copied from interface: `Copyable`
Copies this object into the target container.

Specified by:
  `copyAsync` in interface `Copyable`
Parameters:
  `targetContainer` -
Returns:
  copy job

### copyAsync

public CopyJob copyAsync(TypedID targetContainer, org.gitana.platform.services.transfer.TransferImportStrategy strategy, Map<String,Object> additionalConfiguration)
Description copied from interface: `Copyable`
Copies this object into the target container.

Specified by:
  `copyAsync` in interface `Copyable`
Parameters:
  `targetContainer` -
  `strategy` -
  `additionalConfiguration` -
Returns:
  copy job