org.restlet.engine.local

## Class Entity

- java.lang.Object
- - org.restlet.engine.local.Entity

Direct Known Subclasses:
  FileEntity, ZipEntryEntity

    public abstract class Entity
    extends java.lang.Object

Represents a local entity, for example a regular file or a directory.

Author:
  Thierry Boileau, Jerome Louvel

### Constructor Summary

Constructors
Constructor and Description
`Entity(MetadataService metadataService)` Constructor.

### Method Summary

Methods
`abstract boolean` `exists()` Indicates if the entity does exist.
`java.lang.String` `getBaseName()` Return the base name of this entity that is to say the longest part of the name without known extensions (beginning from the left).
`static java.lang.String` `getBaseName(java.lang.String name, MetadataService metadataService)` Return the base name that is to say the longest part of a given name without known extensions (beginning from the left).
`abstract java.util.List<Entity>` `getChildren()` Returns the list of contained entities if the current entity is a directory, null otherwise.
`java.util.Collection<java.lang.String>` `getExtensions()` Returns the list of known extensions.
`static java.util.Collection<java.lang.String>` `getExtensions(java.lang.String name, MetadataService metadataService)` Returns the list of known extensions taken from a given entity name.
`static java.util.Collection<java.lang.String>` `getExtensions(Variant variant, MetadataService metadataService)` Returns the list of known extensions taken from a given variant.
`MetadataService` `getMetadataService()` Returns the metadata service to use.
`abstract java.lang.String` `getName()` Returns the name.
`abstract Entity` `getParent()` Returns the parent directory (if any).
`abstract Representation` `getRepresentation(MediaType defaultMediaType, int timeToLive)` Returns a representation of this local entity.
`Variant` `getVariant()` Returns a variant corresponding to the extensions of this entity.
`abstract boolean` `isDirectory()` Indicates if the entity is a directory.
`abstract boolean` `isNormal()` Indicates if the entity is a normal entity, especially if it is not a directory.
`static void` `updateMetadata(java.lang.String entryName, Variant variant, boolean applyDefault, MetadataService metadataService)` Updates some variant metadata based on a given entry name with extensions.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### Entity

    public Entity(MetadataService metadataService)

Constructor.

Parameters:
  `metadataService` - The metadata service to use.

### Method Detail

#### getBaseName

    public static java.lang.String getBaseName(java.lang.String name,
                               MetadataService metadataService)

Return the base name that is to say the longest part of a given name without known extensions (beginning from the left).

Parameters:
  `name` - The given name.
  `metadataService` - Service that holds the known extensions.
Returns:
  The base name of this entity.

#### getExtensions

    public static java.util.Collection<java.lang.String> getExtensions(java.lang.String name,
                                                       MetadataService metadataService)

Returns the list of known extensions taken from a given entity name.

Parameters:
  `name` - the given name.
  `metadataService` - Service that holds the known extensions.
Returns:
  The list of known extensions taken from the entity name.

#### getExtensions

    public static java.util.Collection<java.lang.String> getExtensions(Variant variant,
                                                       MetadataService metadataService)

Returns the list of known extensions taken from a given variant.

Parameters:
  `variant` - the given variant.
  `metadataService` - Service that holds the known extensions.
Returns:
  The list of known extensions taken from the variant.

#### updateMetadata

    public static void updateMetadata(java.lang.String entryName,
                      Variant variant,
                      boolean applyDefault,
                      MetadataService metadataService)

Updates some variant metadata based on a given entry name with extensions.

Parameters:
  `entryName` - The entry name with extensions.
  `variant` - The variant to update.
  `applyDefault` - Indicate if default metadata must be applied.
  `metadataService` - The parent metadata service.

#### exists

    public abstract boolean exists()

Indicates if the entity does exist.

Returns:
  True if the entity does exists.

#### getBaseName

    public java.lang.String getBaseName()

Return the base name of this entity that is to say the longest part of the name without known extensions (beginning from the left).

Returns:
  The base name of this entity.

#### getChildren

    public abstract java.util.List<Entity> getChildren()

Returns the list of contained entities if the current entity is a directory, null otherwise.

Returns:
  The list of contained entities.

#### getExtensions

    public java.util.Collection<java.lang.String> getExtensions()

Returns the list of known extensions.

Returns:
  The list of known extensions taken from the entity name.

#### getMetadataService

    public MetadataService getMetadataService()

Returns the metadata service to use.

Returns:
  The metadata service to use.

#### getName

    public abstract java.lang.String getName()

Returns the name.

Returns:
  The name.

#### getParent

    public abstract Entity getParent()

Returns the parent directory (if any).

Returns:
  The parent directory, null otherwise.

#### getRepresentation

    public abstract Representation getRepresentation(MediaType defaultMediaType,
                                   int timeToLive)

Returns a representation of this local entity.

Returns:
  A representation of this entity.

#### getVariant

    public Variant getVariant()

Returns a variant corresponding to the extensions of this entity.

Returns:
  A variant corresponding to the extensions of this entity.

#### isDirectory

    public abstract boolean isDirectory()

Indicates if the entity is a directory.

Returns:
  True if the entity is a directory.

#### isNormal

    public abstract boolean isNormal()

Indicates if the entity is a normal entity, especially if it is not a directory.

Returns:
  True if the entity is a normal entity.
See Also:
  `File.isFile()`, `File.isDirectory()`