3.2.4.1.4 UploadManager

The file uploaded through UploadManager as part of the process of sending a file from the client to the server is designated as an "upload package." This package MUST be in the format of an Open Packaging Convention (OPC) container file. See section 7 for a sample package.

OPC is defined in [ISO/IEC29500:2011] Part 2 and in [ECMA-376].

The upload package, known as an OC package, MUST contain a manifest file called "OcpManifest.xml." The client can include additional files if they are referenced in the manifest file. This manifest file contains instructions for the server to use to create a content instance or an image annotation, to upgrade a content instance by replacing it with newer data or files, or to update a PptContent in data groups. Upgrading a content instance is currently not supported, and is reserved for future use. A server implementation MAY ignore this request. Any file referred to in the manifest MUST be present in the root level of the OC package. See the schema in section 3.2.4.1.4.2 for details of the format of the manifest.

To upload an OC package, the client MUST initiate the upload by sending an sRequestUpload message to the server.

The server can accept or deny the upload. If the server accepts the upload, the client can proceed with the upload using the upload stream distributed object provided by the server. When the upload is complete, the client MUST call the sUploadFinished method to notify the server that it sent all the data.

The following table lists the UploadFinishReason response codes.

Response code

Numeric value

Description

Ok

0

Success.

UserCancel

1

The user cancelled the upload.

MaxPackageSizeExceeded

2

The size of the package was too large as determined by the server (2).

CapacityExceeded

3

There is not enough space on the server (2) to complete the operation.

UnknownFailure

4

Unknown failure.

AlreadyUploading

5

The client is already uploading with that cookie.

VerifyFailed

6

There was an error verifying the package on the server (2).

VirusScanTimeout

7

The virus scanning engine took an excessive amount of time.

NotUploading

8

The cookie provided was invalid.

TooManyUploads

9

The client attempted to initiate too many uploads at once.<13>

ArchiveFailed

10

There was a failure archiving important information.

TooManyContents

11

There are more than a predefined number of Content objects in the conference.<14>

TooManySlides

12

A given PowerPoint content upload contained more than a predefined number of slides.<15>