class Net::FTP::MLSxEntry

[edit]

要約

Net::FTP#mlsdNet::FTP#mlst の結果を保持するクラスです。

Notes

このクラスのオブジェクトが保持している permission の情報 (Net::FTP::MLSxEntry#deletable? など)は対応するコマンド(Net::FTP#delete など)が常にうまくいくことを保証するものではありません。例えばディスクの空き容量が不足しているというような理由でうまくいかない場合があります。

目次

インスタンスメソッド

インスタンスメソッド

appendable? -> bool[permalink][rdoc][edit]

エントリが追記可能であれば true を返します。

APPE コマンド(Net::FTP#putbinaryfile など) が適用可能であるかどうかを意味します。

charset -> String|nil[permalink][rdoc][edit]

エンコーディング情報を返します。

IANA character set name の値を返します。

情報がない場合は nil を返します。

creatable? -> bool[permalink][rdoc][edit]

ディレクトリにファイルが作成可能であれば true を返します。

STOU, STOR などのコマンド(Net::FTP#putbinaryfile など) が適用可能であるかどうかを意味します。

create -> Time|nil[permalink][rdoc][edit]

エントリの作成時刻を返します。

情報がない場合は nil を返します。

deletable? -> bool[permalink][rdoc][edit]

エントリが削除可能であれば true を返します。

ディレクトリであれば Net::FTP#rmdir が、ファイルであれば Net::FTP#delete が、それぞれ適用可能であるかどうかを意味します。

directory? -> bool[permalink][rdoc][edit]

エントリがディレクトリであれば true を返します。

Net::FTP::MLSxEntry#type が "dir"、 "pdir"、 "cdir"、のいずれかであれば true を返します。

directory_makable? -> bool[permalink][rdoc][edit]

ディレクトリを作成可能ならば true を返します。

Net::FTP#mkdir でディレクトリを作成可能かどうかを意味します。

enterable? -> bool[permalink][rdoc][edit]

エントリの中に入れるならば true を返します。

Net::FTP#chdir で入れるかどうかを意味します。

facts -> { String => String|Integer|Time }[permalink][rdoc][edit]

そのエントリの「facts」を返します。

facts とはそのエントリに関するファイルサイズなどの様々な情報です。 Net::FTP はこの情報を文字列をキーとするハッシュテーブルで返します。標準では以下のような facts が定義されています。これらの facts には対応するメソッドが定義されています。すべてのサーバでこれらの facts がすべて実装されているわけではありません。 [RFC3659] では modify, perm, type, size, unique はすべてのサーバで対応すべき(SHOULD)、とされています。

  • "modify" : 変更時刻 (Time)
  • "create": 作成時刻
  • "perm": パーミッション(String)
  • "type": 種類(String, "file", "dir", "cdir", "pdir" など)
  • "size": ファイルサイズ (Integer, octet単位)
  • "unique": ユニークID (String)
  • "lang": ファイルの言語 (String)
  • "media-type": メディアタイプ (String)
  • "charset": 文字エンコーディング (String)

サーバが UNIX 系 OS の場合は以下のような facts が使える可能性があります。

  • "unix.mode": ファイルモード(Integer)
  • "unix.group": グループ(Integer)
  • "unix.owner": ファイルのオーナー(Integer)
  • "unix.atime": ファイルに最後にアクセスした時刻 (Time)
  • "unix.ctime": ファイルを作成した時刻 (Time)

これ以外の非標準的な fact を保持している場合もあります。

詳しくは [RFC3659] を参照してください。

file? -> bool[permalink][rdoc][edit]

エントリの種類がファイルであれば true を返します。

Net::FTP::MLSxEntry#type == "file" と同じ意味です。

lang -> String|nil[permalink][rdoc][edit]

言語情報を返します。

例えば "en_US" などです。

情報がない場合は nil を返します。

listable? -> bool[permalink][rdoc][edit]

ディレクトリの内容一覧を得ることが可能ならば true を返します。

Net::FTP#listNet::FTP#nlstNet::FTP#mlst などでディレクトリの内容を閲覧できるかどうかを意味します。

media_type -> String|nil[permalink][rdoc][edit]

メディアタイプを返します。

IANA media type の値を返します。

情報がない場合は nil を返します。

modify -> Time|nil[permalink][rdoc][edit]

エントリの変更時刻を返します。

情報がない場合は nil を返しますが、通常はあるはずです。

pathname -> String[permalink][rdoc][edit]

パス名を返します。

perm -> String|nil[permalink][rdoc][edit]

パーミッション文字列を返します。

情報がない場合は nil を返しますが、通常はあるはずです。

purgeable? -> bool[permalink][rdoc][edit]

ディレクトリの内容を削除可能であるならば true を返します。

これはディレクトリ自体が削除できるかどうかは意味しません。

readable? -> bool[permalink][rdoc][edit]

内容が読み出せるなら true を返します。

renamable? -> bool[permalink][rdoc][edit]

名前が変更可能であれば true を返します。

Net::FTP#rename が使えるかどうかを意味します。

size -> Integer|nil[permalink][rdoc][edit]

エントリのサイズを返します。

サイズ情報がない、もしくはサイズが意味をもたない(ディレクトリの場合など) は nil を返します。

type -> String|nil[permalink][rdoc][edit]

エントリの種類を返します。

"file", "dir", "cdir", "pdir" などを返します。

情報がない場合は nil を返しますが、通常はあるはずです。

unique -> String|nil[permalink][rdoc][edit]

ユニークIDを返します。

情報がない場合は nil を返しますが、通常はあるはずです。

writable? -> bool[permalink][rdoc][edit]

ファイルに書き込めるなら true を返します。