openGionopenGion
5.8.9.0

org.opengion.fukurou.util
クラス SMBConnect

java.lang.Object
  上位を拡張 org.opengion.fukurou.util.AbstractConnect
      上位を拡張 org.opengion.fukurou.util.SMBConnect
すべての実装されたインタフェース:
ConnectIF

public final class SMBConnect
extends AbstractConnect

SMBConnect.java は、共通的に使用される Smb関連の基本機能を実装した、クラスです。 これは、jcifs.smb パッケージをベースに開発されています。 このクラスの実行には、jcifs-1.3.14.jar が必要です。 接続先のURL schemeは、以下の形式をしています。 smb://[[[domain;]username[:password]@]server[:port]/[[share/[dir/]file]]][?[param=value[param2=value2[...]]] このURLは、内部的に自動作成します。/[[share/[dir/]file]] 部分が、remoteFile として指定する部分になります。 * -host=Smbサーバー -user=ユーザー -passwd=パスワード -remoteFile=Smb先のファイル名 を必須設定します。 -localFile=ローカルのファイル名は、必須ではありませんが、-command=DEL の場合にのみ不要であり、 それ以外の command の場合は、必要です。 -command=[GET/PUT/DEL/GETDIR/PUTDIR/DELDIR] は、SFTPサーバーに対しての処理の方法を指定します。 GET:Smbサーバーからローカルにファイル転送します(初期値) PUT:ローカルファイルをSmbサーバーに PUT(STORE、SAVE、UPLOAD、などと同意語)します。 DEL:Smbサーバーの指定のファイルを削除します。この場合のみ、-localFile 属性の指定は不要です。 GETDIR,PUTDIR,DELDIR:指定のフォルダ以下のファイルを処理します。 -mkdirs=[true/false] は、受け側のファイル(GET時:LOCAL、PUT時:Smbサーバー)に取り込むファイルのディレクトリが 存在しない場合に、作成するかどうかを指定します(初期値:true)。 通常、Smbサーバーに、フォルダ階層を作成してPUTする場合、動的にフォルダ階層を作成したいケースで便利です。 逆に、フォルダは確定しており、指定フォルダ以外に PUT するのはバグっていると事が分かっている場合には false に設定して、存在しないフォルダにPUT しようとすると、エラーになるようにします。 引数文字列中に空白を含む場合は、ダブルコーテーション("") で括って下さい。 引数文字列の 『=』の前後には、空白は挟めません。必ず、-key=value の様に 繋げてください。

形式サンプル:
 SMBConnect -host=Smbサーバー -user=ユーザー -passwd=パスワード -remoteFile=Smb先のファイル名 [-localFile=ローカルのファイル名]
                   [-command=[GET/PUT/DEL/GETDIR/PUTDIR/DELDIR] ] ]

    -host=Smbサーバー                 :接続先のSmbサーバーのアドレスまたは、サーバー名
    -user=ユーザー                    :接続するユーザー名
    -passwd=パスワード                :接続するユーザーのパスワード
    -remoteFile=Smb先のファイル名     :接続先のSmbサーバー側のファイル名。PUT,GET 関係なくSmb側として指定します。
   [-localFile=ローカルのファイル名]  :ローカルのファイル名。PUT,GET 関係なくローカルファイルを指定します。
   [-domain=ドメイン ]                :接続するサーバーのドメインを指定します。
   [-port=ポート ]                    :接続するサーバーのポートを指定します。
   [-command=[GET/PUT/DEL] ]          :Smbサーバー側での処理の方法を指定します。
             [GETDIR/PUTDIR/DELDIR]]          GET:Smb⇒LOCAL、PUT:LOCAL⇒Smb への転送です(初期値:GET)
                                              DEL:Smbファイルを削除します。
                                              GETDIR,PUTDIR,DELDIR 指定のフォルダ以下のファイルを処理します。
   [-mkdirs=[true/false]  ]           :受け側ファイル(GET時:LOCAL、PUT時:Smbサーバー)にディレクトリを作成するかどうか(初期値:true)
                                              (false:ディレクトリが無ければ、エラーにします。)
   [-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
 
コンストラクタの概要
SMBConnect()
           
 
メソッドの概要
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()
          Smbサーバーへの接続、ログインを行います。
 void disconnect()
          Smbサーバーとの接続をクローズします。
static void main(String[] args)
          このクラスの動作確認用の、main メソッドです。
 void setDomain(String domain)
          接続先にログインするドメインを設定します。
 
クラス 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
 

コンストラクタの詳細

SMBConnect

public SMBConnect()
メソッドの詳細

connect

public void connect()
Smbサーバーへの接続、ログインを行います。 このメソッドは、初期化メソッドです。 Smbサーバーへの接続、ログインを行いますので、複数ファイルを転送する ケースでは、最初に1度だけ呼び出すだけです。 接続先を変更する場合は、もう一度このメソッドをコールする必要があります。 (そのような場合は、通常、オブジェクトを構築しなおす方がよいと思います。) 接続時のアドレスは、下記の形式になりますが、ファイル名の箇所は、action 時に指定するため、 ここでは、先頭部分を先に用意しておきます。 smb://[[[domain;]username[:password]@]server[:port]/[[share/[dir/]file]]][?[param=value[param2=value2[...]]]

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

disconnect

public void disconnect()
Smbサーバーとの接続をクローズします。 ここでは、何も処理を行いません。

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

actionGET

protected void actionGET(String localFile,
                         String remoteFile)
                  throws IOException
command="GET" が指定されたときの処理を行います。 接続先のSmbサーバー側のファイル名をローカルにダウンロードします。

定義:
クラス AbstractConnect 内の actionGET
パラメータ:
localFile - ローカルのファイル名
remoteFile - Smb先のファイル名
例外:
IOException - 入出力エラーが発生したとき

actionGETdir

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

定義:
クラス AbstractConnect 内の actionGETdir
パラメータ:
localDir - ローカルのディレクトリ名
remoteDir - Smb先のディレクトリ名
例外:
IOException - 入出力エラーが発生したとき

actionPUT

protected void actionPUT(String localFile,
                         String remoteFile)
                  throws IOException
command="PUT" が指定されたときの処理を行います。 ローカルファイルを、接続先のSmbサーバー側にアップロードします。

定義:
クラス AbstractConnect 内の actionPUT
パラメータ:
localFile - ローカルのファイル名
remoteFile - Smb先のファイル名
例外:
IOException - 入出力エラーが発生したとき

actionDEL

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

定義:
クラス AbstractConnect 内の actionDEL
パラメータ:
remoteFile - Smb先のファイル名
例外:
IOException - 入出力エラーが発生したとき

actionDELdir

protected void actionDELdir(String remoteDir)
                     throws IOException
command="DELDIR" が指定されたときの処理を行います。 接続先のSmbサーバー側のディレクトリ以下をローカルディレクトリに階層構造のままダウンロードします。

定義:
クラス AbstractConnect 内の actionDELdir
パラメータ:
remoteDir - Smb先のディレクトリ名
例外:
IOException - 入出力エラーが発生したとき

setDomain

public void setDomain(String domain)
接続先にログインするドメインを設定します。

パラメータ:
domain - 接続先にログインするドメイン

main

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

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

openGion 5.8.9.0

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