クラス SFTPConnect
- java.lang.Object
-
- org.opengion.fukurou.util.AbstractConnect
-
- org.opengion.fukurou.util.SFTPConnect
-
- すべての実装されたインタフェース:
ConnectIF
public final class SFTPConnect extends AbstractConnect
SFTPConnect.java は、共通的に使用される SFTP関連の基本機能を実装した、クラスです。 これは、org.apache.commons.net.ftp.FTPClient をベースに開発されています。 このクラスの実行には、commons-net-ftp-2.0.jar が必要です。 -host=SFTPサーバー -user=ユーザー -passwd=パスワード -remoteFile=SFTP先のファイル名 を必須設定します。 -localFile=ローカルのファイル名は、必須ではありませんが、-command=DEL の場合にのみ不要であり、 それ以外の command の場合は、必要です。 -command=[GET/PUT/DEL/GETDIR/PUTDIR/DELDIR] は、SFTPサーバーに対しての処理の方法を指定します。 GET:SFTPサーバーからローカルにファイル転送します(初期値)。 PUT:ローカルファイルをSFTPサーバーに PUT(STORE、SAVE、UPLOAD、などと同意語)します。 DEL:SFTPサーバーの指定のファイルを削除します。この場合のみ、-localFile 属性の指定は不要です。 GETDIR,PUTDIR,DELDIR:指定のフォルダ以下のファイルを処理します。 -mkdirs=[true/false] は、受け側のファイル(GET時:LOCAL、PUT時:SFTPサーバー)に取り込むファイルのディレクトリが 存在しない場合に、作成するかどうかを指定します(初期値:true)。 通常、SFTPサーバーに、フォルダ階層を作成してPUTする場合、動的にフォルダ階層を作成したいケースで便利です。 逆に、フォルダは確定しており、指定フォルダ以外に PUT するのはバグっていると事が分かっている場合には false に設定して、存在しないフォルダにPUT しようとすると、エラーになるようにします。 引数文字列中に空白を含む場合は、ダブルコーテーション("") で括って下さい。 引数文字列の 『=』の前後には、空白は挟めません。必ず、-key=value の様に 繋げてください。- 導入されたバージョン:
- JDK5.0,
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 SFTPConnect()
デフォルトコンストラクター
-
メソッドの概要
すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 protected void
actionDEL(String remoteFile)
command="DEL" が指定されたときの処理を行います。protected void
actionDELdir(String remoteDir)
command="DELDIR" が指定されたときの処理を行います。protected void
actionGET(String localFile, String remoteFile)
command="GET" が指定されたときの処理を行います。protected void
actionGETdir(String localDir, String remoteDir)
command="GETDIR" が指定されたときの処理を行います。protected void
actionPUT(String localFile, String remoteFile)
command="PUT" が指定されたときの処理を行います。void
connect()
SFTPサーバーへの接続、ログインを行います。void
disconnect()
SFTPサーバーとの接続をクローズします。static void
main(String[] args)
このクラスの動作確認用の、main メソッドです。void
setKeyFile(String keyFile)
公開キー暗号化方式を利用する場合のキーファイル名を指定します。-
クラスから継承されたメソッド org.opengion.fukurou.util.AbstractConnect
action, actionPUTdir, addFile, errAppend, errAppend, getErrMsg, getPort, getPort, makeLocalDir, setDebug, setDisplay, setHostUserPass, setMkdirs, setPort, setTimeout
-
-
-
-
コンストラクタの詳細
-
SFTPConnect
public SFTPConnect()
デフォルトコンストラクター
-
-
メソッドの詳細
-
connect
public void connect()
SFTPサーバーへの接続、ログインを行います。 このメソッドは、初期化メソッドです。 SFTPサーバーへの接続、ログインを行いますので、複数ファイルを転送する ケースでは、最初に1度だけ呼び出すだけです。 接続先を変更する場合は、もう一度このメソッドをコールする必要があります。 (そのような場合は、通常、オブジェクトを構築しなおす方がよいと思います。)- 定義:
connect
インタフェース内ConnectIF
- 定義:
connect
クラス内AbstractConnect
-
disconnect
public void disconnect()
SFTPサーバーとの接続をクローズします。 ログインされている場合は、ログアウトも行います。 コネクトされている場合は、ディスコネクトします。- 定義:
disconnect
インタフェース内ConnectIF
- 定義:
disconnect
クラス内AbstractConnect
-
actionGET
protected void actionGET(String localFile, String remoteFile) throws IOException
command="GET" が指定されたときの処理を行います。 ローカルファイルを、接続先のSFTPサーバー側にアップロードします。- 定義:
actionGET
クラス内AbstractConnect
- パラメータ:
localFile
- ローカルのファイル名remoteFile
- SFTP先のファイル名- 例外:
IOException
- 入出力エラーが発生したとき
-
actionGETdir
protected void actionGETdir(String localDir, String remoteDir) throws IOException
command="GETDIR" が指定されたときの処理を行います。 接続先のSFTPサーバー側のディレクトリ以下をローカルディレクトリに階層構造のままダウンロードします。- 定義:
actionGETdir
クラス内AbstractConnect
- パラメータ:
localDir
- ローカルのディレクトリ名remoteDir
- SFTP先のディレクトリ名- 例外:
IOException
- 入出力エラーが発生したとき
-
actionPUT
protected void actionPUT(String localFile, String remoteFile) throws IOException
command="PUT" が指定されたときの処理を行います。 接続先のSFTPサーバー側のファイル名をローカルにダウンロードします。- 定義:
actionPUT
クラス内AbstractConnect
- パラメータ:
localFile
- ローカルのファイル名remoteFile
- SFTP先のファイル名- 例外:
IOException
- 処理中に Sftp エラーが発生した場合
-
actionDEL
protected void actionDEL(String remoteFile) throws IOException
command="DEL" が指定されたときの処理を行います。 接続先のSFTPサーバー側のファイル名を削除します。- 定義:
actionDEL
クラス内AbstractConnect
- パラメータ:
remoteFile
- SFTP先のファイル名- 例外:
IOException
- SFTPサーバー側のファイル名の削除に失敗したとき
-
actionDELdir
protected void actionDELdir(String remoteDir) throws IOException
command="DELDIR" が指定されたときの処理を行います。 接続先のSFTPサーバー側のディレクトリ名を削除します。- 定義:
actionDELdir
クラス内AbstractConnect
- パラメータ:
remoteDir
- SFTP先のディレクトリ名- 例外:
IOException
- SFTPサーバー側のディレクトリ名の削除に失敗したとき
-
setKeyFile
public void setKeyFile(String keyFile)
公開キー暗号化方式を利用する場合のキーファイル名を指定します。- パラメータ:
keyFile
- 秘密キーファイル名
-
-