openGionopenGion
5.6.0.0

org.opengion.fukurou.util
クラス 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 の様に 繋げてください。

形式サンプル:
 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[表示しない])
変更履歴:
5.1.6.0 (2010/05/01) 新規追加
バージョン
5.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
 
クラス org.opengion.fukurou.util.AbstractConnect から継承されたフィールド
CR, FLAG_NG, FLAG_OK, host, isDebug, isDisplay, isMkdirs, passwd, port, timeout, TIMEOUT, user
 
コンストラクタの概要
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)
          公開キー暗号化方式を利用する場合のキーファイル名を指定します。
 
クラス org.opengion.fukurou.util.AbstractConnect から継承されたメソッド
action, actionPUTdir, addFile, errAppend, errAppend, getErrMsg, getPort, getPort, makeLocalDir, setDebug, setDisplay, setHostUserPass, setMkdirs, setPort, setTimeout
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

SFTPConnect

public SFTPConnect()
デフォルトコンストラクター

メソッドの詳細

connect

public void connect()
SFTPサーバーへの接続、ログインを行います。 このメソッドは、初期化メソッドです。 SFTPサーバーへの接続、ログインを行いますので、複数ファイルを転送する ケースでは、最初に1度だけ呼び出すだけです。 接続先を変更する場合は、もう一度このメソッドをコールする必要があります。 (そのような場合は、通常、オブジェクトを構築しなおす方がよいと思います。)

定義:
インタフェース ConnectIF 内の connect
定義:
クラス AbstractConnect 内の connect

disconnect

public void disconnect()
SFTPサーバーとの接続をクローズします。 ログインされている場合は、ログアウトも行います。 コネクトされている場合は、ディスコネクトします。

定義:
インタフェース ConnectIF 内の disconnect
定義:
クラス AbstractConnect 内の disconnect

actionGET

protected void actionGET(java.lang.String localFile,
                         java.lang.String remoteFile)
                  throws com.jcraft.jsch.JSchException,
                         com.jcraft.jsch.SftpException,
                         java.io.IOException
command="GET" が指定されたときの処理を行います。 ローカルファイルを、接続先のSFTPサーバー側にアップロードします。

定義:
クラス AbstractConnect 内の actionGET
パラメータ:
localFile - ローカルのファイル名
remoteFile - SFTP先のファイル名
例外:
JSchException, - SftpException, IOException
com.jcraft.jsch.JSchException
com.jcraft.jsch.SftpException
java.io.IOException

actionGETdir

protected void actionGETdir(java.lang.String localDir,
                            java.lang.String remoteDir)
                     throws java.io.IOException,
                            com.jcraft.jsch.JSchException,
                            com.jcraft.jsch.SftpException
command="GETDIR" が指定されたときの処理を行います。 接続先のSFTPサーバー側のディレクトリ以下をローカルディレクトリに階層構造のままダウンロードします。

定義:
クラス AbstractConnect 内の actionGETdir
パラメータ:
localDir - ローカルのディレクトリ名
remoteDir - SFTP先のディレクトリ名
例外:
IOException,JSchException,SftpException
java.io.IOException
com.jcraft.jsch.JSchException
com.jcraft.jsch.SftpException

actionPUT

protected void actionPUT(java.lang.String localFile,
                         java.lang.String remoteFile)
                  throws com.jcraft.jsch.JSchException,
                         com.jcraft.jsch.SftpException
command="PUT" が指定されたときの処理を行います。 接続先のSFTPサーバー側のファイル名をローカルにダウンロードします。

定義:
クラス AbstractConnect 内の actionPUT
パラメータ:
localFile - ローカルのファイル名
remoteFile - SFTP先のファイル名
例外:
JSchException, - SftpException
com.jcraft.jsch.JSchException
com.jcraft.jsch.SftpException

actionDEL

protected void actionDEL(java.lang.String remoteFile)
                  throws com.jcraft.jsch.SftpException
command="DEL" が指定されたときの処理を行います。 接続先のSFTPサーバー側のファイル名を削除します。

定義:
クラス AbstractConnect 内の actionDEL
パラメータ:
remoteFile - SFTP先のファイル名
例外:
com.jcraft.jsch.SftpException

actionDELdir

protected void actionDELdir(java.lang.String remoteDir)
                     throws com.jcraft.jsch.SftpException
command="DELDIR" が指定されたときの処理を行います。 接続先のSFTPサーバー側のディレクトリ名を削除します。

定義:
クラス AbstractConnect 内の actionDELdir
パラメータ:
remoteDir - SFTP先のディレクトリ名
例外:
com.jcraft.jsch.SftpException

setKeyFile

public void setKeyFile(java.lang.String keyFile)
公開キー暗号化方式を利用する場合のキーファイル名を指定します。

パラメータ:
keyFile - 秘密キーファイル名

main

public static void main(java.lang.String[] args)
このクラスの動作確認用の、main メソッドです。

パラメータ:
args - コマンド引数配列

openGion 5.6.0.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.