Click or drag to resize

IPublishingTargetPublishAssets Method


Performs publishes on multiple Asset items, or together with their descendants, toward this publishing target.

For a non-Transform-on-publish target, this action creates XML files for pages and components marked for publishing on this target; generates all metadata files needed for the Dynamic Site Server; and copies over all updated assets.

For a Transform-on-publish target, Pages are fully expanded and XSLT transformed, then saved to target folder in a structured format. Updated assets are also copied over.

Namespace:  Ingeniux.CMS
Assembly:  Ingeniux.CMS.CSAPI (in Ingeniux.CMS.CSAPI.dll) Version: 10.3.169
Syntax
void PublishAssets(
	IEnumerable<IAsset> assets,
	bool incremental = true,
	bool replicate = true
)

Parameters

assets
Type: System.Collections.GenericIEnumerableIAsset
The Assets to be published
incremental (Optional)
Type: SystemBoolean
Whether to publish only changed Pages or all pages. Default is incremental.
replicate (Optional)
Type: SystemBoolean
Whether to perform replication after a successful publish. Default is to replicate.
Exceptions
ExceptionCondition
InvalidOperationExceptionWhen this Publishing Target is retrieved via a Read-only Session.
SecurityExceptionWhen current user doesn't have the permission to perform a publish; when the current user can't access this publishing target; or when performing an incremental publish and the current user doesn't have permision to incrementally publish.
XmlExceptionWhen any XSLT style sheet failed to load as an XML document.
Remarks

This method is in charge of handling the task that carries out the actual publishes. It will not wait for the publish to finish.

All publish tasks are pushed into a queue and executed in sequence.

Incremental publishes will detect if any assets were changed (checked in, marked for publish changes, etc.), since the last publish. If no pages or assets are changed since the last publish, an error is thrown.

Full publishes first clean up the target folder by deleting all files and directories.

If the current user doesn't have access right to use this publishing target, a publish will not happen and an error log entry will be written to design-time log.

The event BeforePublish is fired prior to creating a Publishing Task.

The event BeforePublish is fired after a Publishing Task completes the actual publish, not after the Publishing Task is created.

See Also