3.1.4.1 New Upload Request
The higher-layer protocol MUST populate the SourceEntityBuffer, SourceEntityName, SourceEntitySize, destination URL, and AuthCredentials member variables of the UploadEntityInfo (section 3.1.1.1) object and pass the UploadEntityInfo object to the client. The client sets the UploadEntityInfo.state to STATE_INIT, instantiates the HTTPUploader object, and passes the UploadEntityInfo object to it. The client returns the reference to the HTTPUploader object to the higher-layer protocol.