/*
Исходный код среды исполнения ПВТ-ОО.
Этот исходный код является частью проекта ПВТ-ОО.
Copyright © 2021 Малик Разработчик
Это свободная программа: вы можете перераспространять её и/или
изменять её на условиях Меньшей Стандартной общественной лицензии GNU в том виде,
в каком она была опубликована Фондом свободного программного обеспечения;
либо версии 3 лицензии, либо (по вашему выбору) любой более поздней версии.
Эта программа распространяется в надежде, что она может быть полезна,
но БЕЗО ВСЯКИХ ГАРАНТИЙ; даже без неявной гарантии ТОВАРНОГО ВИДА
или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЁННЫХ ЦЕЛЕЙ. Подробнее см. в Меньшей Стандартной
общественной лицензии GNU.
Вы должны были получить копию Меньшей Стандартной общественной лицензии GNU
вместе с этой программой. Если это не так, см.
<http://www.gnu.org/licenses/>.
*/
package platform.independent.filesystem;
import avt.io.*;
public interface AttributeSet(Object)
{
public void setBooleanAttribute(String attributeId, boolean attributeValue);
public void setLongAttribute(String attributeId, long attributeValue);
public void setStringAttribute(String attributeId, String attributeValue);
public boolean isSupportedAttributeId(String attributeId);
public boolean getBooleanAttribute(String attributeId);
public long getLongAttribute(String attributeId);
public String getStringAttribute(String attributeId);
public String displayName(String attributeId);
public String[] getSupportedAttributeIds();
}
public interface FileSystem(Object)
{
public void readAttributes(String objectName, ObjectAttributes objectAttr) throws ObjectNotFoundException, IOException;
public void writeAttributes(String objectName, ObjectAttributes objectAttr) throws ReadOnlyFileSystemException, ObjectNotFoundException, ObjectWriteAttributesException, IOException;
public void move(String oldObjectName, String newObjectName) throws ReadOnlyFileSystemException, ObjectNotFoundException, MoveOperationException, IOException;
public void deleteDirectory(String directoryName) throws ReadOnlyFileSystemException, DirectoryNotFoundException, DirectoryDeletionException, IOException;
public void deleteFile(String fileName) throws ReadOnlyFileSystemException, FileNotFoundException, FileDeletionException, IOException;
public void createDirectory(String directoryName) throws ReadOnlyFileSystemException, DirectoryCreationException, IOException;
public boolean isReadOnly() throws IOException;
public boolean isObjectExist(String objectName) throws IOException;
public boolean isObjectNameCaseSensitive();
public int getObjectNameMaximumLength();
public String toInternalName(String objectName) throws IOException;
public ObjectEnumeration findFirst() throws ObjectNotFoundException, IOException;
public ObjectEnumeration findFirst(String objectName) throws ObjectNotFoundException, IOException;
public ByteWriter createFile(String fileName) throws ReadOnlyFileSystemException, FileCreationException, IOException;
public ByteWriter openFileForAppending(String fileName) throws ReadOnlyFileSystemException, FileNotFoundException, IOException;
public ByteReader openFileForReading(String fileName) throws FileNotFoundException, IOException;
public ByteStream openFile(String fileName) throws ReadOnlyFileSystemException, FileNotFoundException, IOException;
public AttributeSet newAttributeSet();
}