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 の様に 繋げてください。
SFTPConnect -host=SFTPサーバー -user=ユーザー -passwd=パスワード -remoteFile=SFTP先のファイル名 [-localFile=ローカルのファイル名] [-mode=[ASCII/BINARY] ] [-command=[GET/PUT/DEL/GETDIR/PUTDIR/DELDIR] ] [-passive=[true/false] ] -host=SFTPサーバー :接続先のSFTPサーバーのアドレスまたは、サーバー名 -user=ユーザー :接続するユーザー名 -remoteFile=SFTP先のファイル名 :接続先のSFTPサーバー側のファイル名。PUT,GET 関係なくSFTP側として指定します。 [-passwd=パスワード] :接続するユーザーのパスワード [-localFile=ローカルのファイル名] :ローカルのファイル名。PUT,GET 関係なくローカルファイルを指定します。 [-port=ポート ] :接続するサーバーのポートを指定します。 [-keyFile=秘密キーファイル ] :公開キー暗号化方式を利用する場合のキーファイル名を指定します。 [-command=[GET/PUT/DEL] ] :SFTPサーバー側での処理の方法を指定します。 [GETDIR/PUTDIR/DELDIR]] GET:SFTP⇒LOCAL、PUT:LOCAL⇒SFTP への転送です(初期値:GET) DEL:SFTPファイルを削除します。 GETDIR,PUTDIR,DELDIR 指定のフォルダ以下のファイルを処理します。 [-mkdirs=[true/false] ] :受け側ファイル(GET時:LOCAL、PUT時:SFTPサーバー)にディレクトリを作成するかどうか(初期値:true) (false:ディレクトリが無ければ、エラーにします。) [-timeout=タイムアウト[秒] ] :Dataタイムアウト(初期値:600 [秒]) [-display=[false/true] ] :trueは、検索状況を表示します(初期値:false) [-debug=[false|true] ] :デバッグ情報を標準出力に表示する(true)かしない(false)か(初期値:false[表示しない])
コンストラクタと説明 |
---|
SFTPConnect()
デフォルトコンストラクター
|
修飾子とタイプ | メソッドと説明 |
---|---|
protected void |
actionDEL(java.lang.String remoteFile)
command="DEL" が指定されたときの処理を行います。
|
protected void |
actionDELdir(java.lang.String remoteDir)
command="DELDIR" が指定されたときの処理を行います。
|
protected void |
actionGET(java.lang.String localFile,
java.lang.String remoteFile)
command="GET" が指定されたときの処理を行います。
|
protected void |
actionGETdir(java.lang.String localDir,
java.lang.String remoteDir)
command="GETDIR" が指定されたときの処理を行います。
|
protected void |
actionPUT(java.lang.String localFile,
java.lang.String remoteFile)
command="PUT" が指定されたときの処理を行います。
|
void |
connect()
SFTPサーバーへの接続、ログインを行います。
|
void |
disconnect()
SFTPサーバーとの接続をクローズします。
|
static void |
main(java.lang.String[] args)
このクラスの動作確認用の、main メソッドです。
|
void |
setKeyFile(java.lang.String keyFile)
公開キー暗号化方式を利用する場合のキーファイル名を指定します。
|
action, actionPUTdir, addFile, errAppend, errAppend, getErrMsg, getPort, getPort, makeLocalDir, setDebug, setDisplay, setHostUserPass, setMkdirs, setPort, setTimeout
public SFTPConnect()
public void connect()
connect
インタフェース内 ConnectIF
connect
クラス内 AbstractConnect
public void disconnect()
disconnect
インタフェース内 ConnectIF
disconnect
クラス内 AbstractConnect
protected void actionGET(java.lang.String localFile, java.lang.String remoteFile) throws java.io.IOException
actionGET
クラス内 AbstractConnect
localFile
- ローカルのファイル名remoteFile
- SFTP先のファイル名java.io.IOException
- 入出力エラーが発生したときprotected void actionGETdir(java.lang.String localDir, java.lang.String remoteDir) throws java.io.IOException
actionGETdir
クラス内 AbstractConnect
localDir
- ローカルのディレクトリ名remoteDir
- SFTP先のディレクトリ名java.io.IOException
- 入出力エラーが発生したときprotected void actionPUT(java.lang.String localFile, java.lang.String remoteFile) throws java.io.IOException
actionPUT
クラス内 AbstractConnect
localFile
- ローカルのファイル名remoteFile
- SFTP先のファイル名java.io.IOException
- 処理中に Sftp エラーが発生した場合protected void actionDEL(java.lang.String remoteFile) throws java.io.IOException
actionDEL
クラス内 AbstractConnect
remoteFile
- SFTP先のファイル名java.io.IOException
- SFTPサーバー側のファイル名の削除に失敗したときprotected void actionDELdir(java.lang.String remoteDir) throws java.io.IOException
actionDELdir
クラス内 AbstractConnect
remoteDir
- SFTP先のディレクトリ名java.io.IOException
- SFTPサーバー側のディレクトリ名の削除に失敗したときpublic void setKeyFile(java.lang.String keyFile)
keyFile
- 秘密キーファイル名public static void main(java.lang.String[] args)
args
- コマンド引数配列Webアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.