# retrieveFileTransferProtocolFactory

###### Identifier:

org.eclipse.ecf.provider.filetransfer.retrieveFileTransferProtocolFactory

###### Since:

1.0.0

###### Description:

This extension point allows IRetrieveFileTransferFactorys to be defined for given file transfer protocols.

###### Configuration Markup:

<!ELEMENT extension (retrieveFileTransferProtocolFactory*)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED

>

<!ELEMENT retrieveFileTransferProtocolFactory EMPTY>

<!ATTLIST retrieveFileTransferProtocolFactory

protocol CDATA #REQUIRED

class CDATA #REQUIRED

priority CDATA #IMPLIED

>

Retrieve file transfer protocol factory extention point

- protocol - Protocol to define factory for. For example, http, https, ftp, bittorrent, my.favorite.protocol.
- class - The factory class to use for given protocol. Must implement org.eclipse.ecf.filetransfer.service.IRetrieveFileTransferFactory
- priority - Priority relative to other retrieveFileTransferProtocolFactory extensions. Valid priorities are 0 (highest priority) to 100 (lowest priority). If this optional attribute is not specified, it will automatically be assigned a default priority of 100.

###### Examples:

       <extension
             point="org.eclipse.ecf.provider.filetransfer.retrieveFileTransferProtocolFactory">
          <retrieveFileTransferProtocolFactory
                class="org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransferFactory"
                protocol="http"
                priority="10">
          </retrieveFileTransferProtocolFactory>
          <retrieveFileTransferProtocolFactory
                class="org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransferFactory"
                protocol="https">
          </retrieveFileTransferProtocolFactory>
       </extension>

###### API Information:

Here is the org.eclipse.ecf.filetransfer.service.IRetrieveFileTransferFactory

    /**
     * Retrieve file transfer factory. This service interface is used by clients to
     * create a new IRetrieveFileTransfer instance.
     */
    public interface IRetrieveFileTransferFactory {

     /**
      * Get new instance of IRetrieveFileTransfer.
      *
      * @return IRetrieveFileTransfer for a given file transfer
      */
     public IRetrieveFileTransfer newInstance();

    }

###### Supplied Implementation:

None

Copyright (c) 2004 Composent, Inc., IBM and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html. Contributors: Composent, Inc. - initial API and implementation, IBM, Inc. - Initial API and implementation