GnuSmalltalkUsersGuide:BaseChapter 204

From 흡혈양파의 번역工房
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
VFS.ArchiveFile

VFS.ArchiveFile

네임스페이스 Smalltalk.VFS에 정의됨

슈퍼클래스: VFS.FileWrapper

범주: 스트림-파일


ArchiveFile는 자신만의 디렉터리 구조를 가진 가상 filesystem을 처리한다. 아카이브 내의 디렉터리와 파일은 ArchiveMember의 인스턴스들이지만 기능은 모두 ArchiveFile에 상주하는데, 그 이유는 멤버들이 여전히 그들에 관한 디렉터리 정보를 얻거나 실제 파일로 압축해제를 하는 등의 작업을 아카이브에게 요청하기 때문이다.


VFS.ArchiveFile: ArchiveMember 프로토콜

fillMember: anArchiveMember

정보를 anArchiveMember로 압축해제(extract)하라. 아카이브에 존재하지 않을 경우 false를 응답하라; 그 외의 경우, anArchiveMember 에게 #size:stCtime:stMtime:stAtime:isDirectory: 를 전송함으로써 그들에 관해 알린 다음 true를 응답하라.

member: anArchiveMember do: aBlock

anArchiveMember가 나타내는 디렉터리 내 각 파일마다 aBlock을 한 번씩 평가하고 그 이름을 전달하라.

member: anArchiveMember mode: bits

anArchiveMember 내 파일에 대한 권한 비트를 설정하라.

refresh

아카이브로부터 디렉터리 리스팅을 추출하라.

removeMember: anArchiveMember

anArchiveMember가 나타내는 멤버를 제거하라.

updateMember: anArchiveMember

파일을 추출한 아카이브로 파일을 다시 복사함으로써 anArchiveMember가 나타내는 멤버를 업데이트하라.


VFS.ArchiveFile: 디렉터리 조작

at: aName

수신자가 나타낸 디렉터리에 상주하는 'aName'으로 명명된 파일에 대한 FilePath를 응답하라.

nameAt: aString

수신자가 나타낸 디렉터리에 상주하는 'aName'으로 명명된 파일에 대한 FilePath를 응답하라.

namesDo: aBlock

수신자가 나타낸 디렉터리 내 각 파일마다 aBlock을 한 번씩 평가하고 그 이름을 전달하라.

release

스냅샷을 재로딩할 때 살아남지 못하는 수신자가 사용하는 자원을 해제(release)하라.


VFS.ArchiveFile: 질의하기

isAccessible

수신자에 포함된 이름으로 된 디렉터리의 존재 유무와 접근 가능성 여부를 응답하라.

isDirectory

true를 응답하라. 아카이브는 항상 디렉터리로 간주할 수 있다.


VFS.ArchiveFile: 아직 분류되지 않음

displayOn: aStream

수신자에 의해 식별되는 파일의 표현을 인쇄하라.


VFS.ArchiveFile: TmpFileArchiveMember 프로토콜

extractMember: anArchiveMember

anArchiveMember의 내용을 디스크에 상주하는 파일에 추출하고, 파일명을 응답하라.

extractMember: anArchiveMember into: file

anArchiveMember의 내용을 디스크에 상주하는 파일에 추출하고, 파일명을 응답하라.


Notes