Class Path
java.lang.Object
it.unimi.di.prog2.temisvolti.filesystem.Path
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final PathCostante corrispondente al path vuoto (path relativo, senza parti)private final booleanIndica se il path è assouto.Contiene le componenti del path.static final PathCostante corrispondente al path radice (path assoluto, senza parti)static final StringCarattere separatore delle parti di un percorso -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic PathfromString(String path) Metodo di fabbricazione che restituisce un path a partire da una stringa.booleanConsente di sapere se il path è assoluto.iterator()name()Restituisce l'ultima componente di questo path.parent()Restituisce il prefisso di questo path a meno dell'ultima componente (o quello vuoto, se questo è vuoto).relativize(Path other) Costruisce un path relativo tra questo e quello dato.Risolve il path dato rispetto a questo.toString()Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface Iterable
forEach, spliterator
-
Field Details
-
SEPARATOR
-
ROOT
Costante corrispondente al path radice (path assoluto, senza parti) -
EMPTY
Costante corrispondente al path vuoto (path relativo, senza parti) -
isAbsolute
private final boolean isAbsoluteIndica se il path è assouto. -
parts
-
-
Constructor Details
-
Path
Costruisce un path a partire da un elenco di stringhe e dall'informazione se sia assoluto o meno.- Parameters:
isAbsolute- indica se il path è assoluto.parts- elenco di stringhe che costituiscono le parti del percorso.- Throws:
NullPointerException- se lepartsè o contienenull.InvalidPathException- se una della parti è vuota, o contiene il separatore.
-
-
Method Details
-
fromString
Metodo di fabbricazione che restituisce un path a partire da una stringa.Alcuni esempi di percorso sono:
- ":A:B:C", percorso assoluto con parti A, B e C,
- "B:C", percorso relativo con parti A, B e C,
- ":", percorso assoluto corrispondente alla radice del filesystem,
- "", percorso vuoto (relativo).
- Parameters:
path- la stringa che corrisponde alla rappresentazione testuale del path.- Returns:
- il path corrispondente alla stringa.
- Throws:
NullPointerException- se path ènullInvalidPathException- se nella stringa compaiono due separatori immediatamente consecutivi.
-
isAbsolute
public boolean isAbsolute()Consente di sapere se il path è assoluto.- Returns:
truesse il path è assoluto.
-
parent
Restituisce il prefisso di questo path a meno dell'ultima componente (o quello vuoto, se questo è vuoto).- Returns:
- un path corrispondente a questo, ma privato dell'ultima componente (se presente).
-
name
Restituisce l'ultima componente di questo path.- Returns:
- l'ultima componente di questo path, o
nullse il path è vuoto.
-
resolve
Risolve il path dato rispetto a questo.Se il path dato come parametro è assoluto esso viene banalmente restituito, se è vuoto, viene invece restituito questo path. In ogni altro caso, questo path viene considerato una directory alla quale sono aggiunte le parti de path passato come argomento (che è relativo); il risultato è assoluto sse lo è questo path.
Per esempio, se questo path è :A:B e il parametro è C:D la risoluzione è :A:B:C:D.
- Parameters:
other- il percorso da risolvere.- Returns:
- il percorso risolto.
-
relativize
Costruisce un path relativo tra questo e quello dato.La relativizzazione è l'inverso di
resolve(Path), restituisce un path che identifica lo stesso file se risolto rispetto a questo.Per esempio, se questo path è :A:B e il parametro è :A:B:C:D la relativizzazione è C:D.
- Parameters:
other- l'altro path.- Returns:
- il path relativizzato.
- Throws:
IllegalArgumentException- se questo path non è assoluto, ma lo è l'argomento, o se l'elenco di parti di quest questo path non è (come lista) prefisso di quelle dell'argomento.
-
toString
-
iterator
-