A class representing the attributes of a file or directory on the server. It may be used to specify new attributes, or to query existing attributes. This particular class is specific to versions 6 and higher of the SFTP protocol.
To specify new attributes, just pass a hash as the argument to the constructor. The following keys are supported:
- :type
-
the type of the item (integer, one of the T_ constants)
- :size
-
the size of the item (integer)
- :#allocation_size
-
the actual number of bytes that the item uses on disk (integer)
- :uid
-
the user-id that owns the file (integer)
- :gid
-
the group-id that owns the file (integer)
- :owner
-
the name of the user that owns the file (string)
- :group
-
the name of the group that owns the file (string)
- :permissions
-
the permissions on the file (integer, e.g. 0755)
- :atime
-
the access time of the file (integer, seconds since epoch)
- :atime_nseconds
-
the nanosecond component of atime (integer)
- :createtime
-
the time at which the file was created (integer, seconds since epoch)
- :createtime_nseconds
-
the nanosecond component of createtime (integer)
- :mtime
-
the modification time of the file (integer, seconds since epoch)
- :mtime_nseconds
-
the nanosecond component of mtime (integer)
- :ctime
-
the time that the file's attributes were last changed (integer)
- :#ctime_nseconds
-
the nanosecond component of ctime (integer)
- :acl
-
an array of ACL entries for the item
- :#attrib_bits
-
other attributes of the file or directory (as a bit field) (integer)
- :#attrib_bits_valid
-
a mask describing which bits in #attrib_bits are valid (integer)
- :#text_hint
-
whether the file may or may not contain textual data (integer)
- :#mime_type
-
the mime type of the file (string)
- :#link_count
-
the hard link count of the file (integer)
- :#untranslated_name
-
the value of the filename before filename translation was attempted (string)
- :extended
-
a hash of name/value pairs identifying extended info
Likewise, when the server sends an Attributes object, all of the above attributes are exposed as methods (though not all will be set with non-nil values from the server).
Methods
Public Instance
Constants
F_ALLOCATION_SIZE | = | 0x00000400 | ||
F_BITS | = | 0x00000200 | ||
F_CTIME | = | 0x00008000 | ||
F_LINK_COUNT | = | 0x00002000 | ||
F_MIME_TYPE | = | 0x00001000 | ||
F_TEXT_HINT | = | 0x00000800 | ||
F_UNTRANSLATED_NAME | = | 0x00004000 |
Attributes
allocation_size | [RW] |
The size on-disk of the file |
attrib_bits | [RW] |
Other attributes of this file or directory (as a bit field) |
attrib_bits_valid | [RW] |
A bit mask describing which bits in attrib_bits are valid |
ctime | [RW] |
The time at which the file's attributes were last changed |
ctime_nseconds | [RW] |
The nanosecond component of ctime |
link_count | [RW] |
The hard link count for the file |
mime_type | [RW] |
The mime-type of the file |
text_hint | [RW] |
Describes whether the file may or may not contain textual data |
untranslated_name | [RW] |
The value of the file name before filename translation was attempted |