Class HttpClientTransmitterImpl

  • All Implemented Interfaces:
    TransferTransmitter

    public class HttpClientTransmitterImpl
    extends java.lang.Object
    implements TransferTransmitter
    HTTP implementation of TransferTransmitter. Sends data via HTTP to the server.
    Author:
    brian
    • Constructor Detail

      • HttpClientTransmitterImpl

        public HttpClientTransmitterImpl()
    • Method Detail

      • init

        public void init()
      • setHttpsSocketFactory

        public void setHttpsSocketFactory​(org.apache.commons.httpclient.protocol.ProtocolSocketFactory socketFactory)
        By default this class uses the standard SSLProtocolSocketFactory, but this method allows this to be overridden. Useful if, for example, one wishes to permit support of self-signed certificates on the target.
        Parameters:
        socketFactory - ProtocolSocketFactory
      • setHttpClient

        public void setHttpClient​(org.apache.commons.httpclient.HttpClient httpClient)
        By default, this class uses a plain HttpClient instance with the only non-default option being the multi-threaded connection manager. Use this method to replace this with your own HttpClient instance configured how you wish
        Parameters:
        httpClient - HttpClient
      • setIsAuthenticationPreemptive

        public void setIsAuthenticationPreemptive​(boolean isAuthenticationPreemptive)
        Whether httpClient will use preemptive authentication or not.
        Parameters:
        isAuthenticationPreemptive - boolean
      • begin

        public Transfer begin​(TransferTarget target,
                              java.lang.String fromRepositoryId,
                              TransferVersion fromVersion)
                       throws TransferException
        Description copied from interface: TransferTransmitter
        Begin a transfer, the transfer object returned will be used by subsequent calls to the transfer service.
        Specified by:
        begin in interface TransferTransmitter
        Parameters:
        target - definition of where to transfer to.
        fromRepositoryId - the repositoryID of the sending system
        fromVersion - the version of the repository sending
        Returns:
        the transfer object or null if the target cannot be locked.
        Throws:
        TransferException
      • sendManifest

        public void sendManifest​(Transfer transfer,
                                 java.io.File manifest,
                                 java.io.OutputStream result)
                          throws TransferException
        Specified by:
        sendManifest in interface TransferTransmitter
        Parameters:
        transfer - the transfer object returned by an earlier call to begin
        manifest - the transfer manifest file
        result - - where to write the results, probably a temporary file the output steam should be open and will be closed before the method returns.
        Throws:
        TransferException
      • getTransferReport

        public void getTransferReport​(Transfer transfer,
                                      java.io.OutputStream result)
        Description copied from interface: TransferTransmitter
        Get the destination side transfer report from the destination and write it to the specified output stream.

        The result stream will be closed.

        Specified by:
        getTransferReport in interface TransferTransmitter
        Parameters:
        transfer - the transfer object returned by an earlier call to begin
        result - - where to write the contents of the transfer report.
      • getPostMethod

        protected org.apache.commons.httpclient.methods.PostMethod getPostMethod()
      • setContentService

        public void setContentService​(ContentService contentService)
      • setHttpMethodFactory

        public void setHttpMethodFactory​(HttpMethodFactory httpMethodFactory)
      • setJsonErrorSerializer

        public void setJsonErrorSerializer​(JsonSerializer<java.lang.Throwable,​org.json.JSONObject> jsonErrorSerializer)
      • setNodeService

        public void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)