Package org.alfresco.repo.transfer
Class HttpClientTransmitterImpl
java.lang.Object
org.alfresco.repo.transfer.HttpClientTransmitterImpl
- All Implemented Interfaces:
TransferTransmitter
HTTP implementation of TransferTransmitter.
Sends data via HTTP to the server.
- Author:
- brian
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAbort the transferbegin(TransferTarget target, String fromRepositoryId, TransferVersion fromVersion) Begin a transfer, the transfer object returned will be used by subsequent calls to the transfer service.voidprotected org.apache.commons.httpclient.methods.PostMethodGet the status of an in process transfervoidgetTransferReport(Transfer transfer, OutputStream result) Get the destination side transfer report from the destination and write it to the specified output stream.voidinit()voidvoidsendContent(Transfer transfer, Set<ContentData> data) Send the content of the specified urlsvoidsendManifest(Transfer transfer, File manifest, OutputStream result) voidsetContentService(ContentService contentService) voidsetHttpClient(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.voidsetHttpMethodFactory(HttpMethodFactory httpMethodFactory) voidsetHttpsSocketFactory(org.apache.commons.httpclient.protocol.ProtocolSocketFactory socketFactory) By default this class uses the standard SSLProtocolSocketFactory, but this method allows this to be overridden.voidsetIsAuthenticationPreemptive(boolean isAuthenticationPreemptive) Whether httpClient will use preemptive authentication or not.voidsetNodeService(NodeService nodeService) voidverifyTarget(TransferTarget target) Verify that the target is available
-
Constructor Details
-
HttpClientTransmitterImpl
public HttpClientTransmitterImpl()
-
-
Method Details
-
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
-
verifyTarget
Description copied from interface:TransferTransmitterVerify that the target is available- Specified by:
verifyTargetin interfaceTransferTransmitter- Parameters:
target- TransferTarget- Throws:
TransferException
-
begin
public Transfer begin(TransferTarget target, String fromRepositoryId, TransferVersion fromVersion) throws TransferException Description copied from interface:TransferTransmitterBegin a transfer, the transfer object returned will be used by subsequent calls to the transfer service.- Specified by:
beginin interfaceTransferTransmitter- Parameters:
target- definition of where to transfer to.fromRepositoryId- the repositoryID of the sending systemfromVersion- 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, File manifest, OutputStream result) throws TransferException - Specified by:
sendManifestin interfaceTransferTransmitter- Parameters:
transfer- the transfer object returned by an earlier call to beginmanifest- the transfer manifest fileresult- - 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
-
abort
Description copied from interface:TransferTransmitterAbort the transfer- Specified by:
abortin interfaceTransferTransmitter- Parameters:
transfer- the transfer object returned by an earlier call to begin- Throws:
TransferException
-
commit
- Specified by:
commitin interfaceTransferTransmitter- Parameters:
transfer- the transfer object returned by an earlier call to begin- Throws:
TransferException
-
prepare
- Specified by:
preparein interfaceTransferTransmitter- Parameters:
transfer- the transfer object returned by an earlier call to begin- Throws:
TransferException
-
sendContent
Description copied from interface:TransferTransmitterSend the content of the specified urls- Specified by:
sendContentin interfaceTransferTransmitter- Parameters:
transfer- the transfer object returned by an earlier call to begindata- the content to send- Throws:
TransferException
-
getStatus
Description copied from interface:TransferTransmitterGet the status of an in process transfer- Specified by:
getStatusin interfaceTransferTransmitter- Throws:
TransferException
-
getTransferReport
Description copied from interface:TransferTransmitterGet the destination side transfer report from the destination and write it to the specified output stream.The result stream will be closed.
- Specified by:
getTransferReportin interfaceTransferTransmitter- Parameters:
transfer- the transfer object returned by an earlier call to beginresult- - where to write the contents of the transfer report.
-
getPostMethod
protected org.apache.commons.httpclient.methods.PostMethod getPostMethod() -
setContentService
-
getContentService
-
setHttpMethodFactory
-
setNodeService
-