fr.jayasoft.ivy
Class DefaultModuleDescriptor

java.lang.Object
  extended by fr.jayasoft.ivy.DefaultModuleDescriptor
All Implemented Interfaces:
ModuleDescriptor

public class DefaultModuleDescriptor
extends java.lang.Object
implements ModuleDescriptor

Author:
X.Hanin

Field Summary
 
Fields inherited from interface fr.jayasoft.ivy.ModuleDescriptor
DEFAULT_CONFIGURATION
 
Constructor Summary
DefaultModuleDescriptor()
          IMPORTANT : at least call setModuleRevisionId and setResolvedPublicationDate with instances created by this constructor !
DefaultModuleDescriptor(ModuleRevisionId id, java.lang.String status, java.util.Date pubDate)
           
DefaultModuleDescriptor(ModuleRevisionId id, java.lang.String status, java.util.Date pubDate, boolean isDefault)
           
 
Method Summary
 void addArtifact(java.lang.String conf, Artifact artifact)
          Artifact configurations are not used since added artifact may not be entirely completed, so its configurations data may not be accurate
 void addConfiguration(Configuration conf)
           
 void addConflictManager(ModuleId moduleId, fr.jayasoft.ivy.matcher.PatternMatcher matcher, ConflictManager manager)
          regular expressions as explained in Pattern class may be used in ModuleId organisation and name
 void addDependency(DependencyDescriptor dependency)
           
 void addLicense(License license)
           
 void check()
          Throws an exception if the module descriptor is inconsistent For the moment, only extended configurations existence is checked
 boolean dependsOn(ModuleDescriptor md)
          Returns true if the module described by this descriptor dependes directly upon the given module descriptor
 Artifact[] getAllArtifacts()
           
 Artifact[] getArtifacts(java.lang.String conf)
           
 Configuration getConfiguration(java.lang.String confName)
          Returns the configuration object with the given name in the current module descriptor, null if not found.
 Configuration[] getConfigurations()
          Returns all the configurations declared by this module as an array.
 java.lang.String[] getConfigurationsNames()
           
 ConflictManager getConflictManager(ModuleId moduleId)
          Returns the conflict manager to use for the given ModuleId
 DependencyDescriptor[] getDependencies()
           
 java.lang.String getHomePage()
           
 long getLastModified()
           
 License[] getLicenses()
          Returns the licenses of the module described by this descriptor
 ModuleRevisionId getModuleRevisionId()
           
 fr.jayasoft.ivy.namespace.Namespace getNamespace()
           
 java.util.Date getPublicationDate()
          may be null if unknown in the descriptor itself
 java.lang.String[] getPublicConfigurationsNames()
           
 ModuleRevisionId getResolvedModuleRevisionId()
          The module revision id returned here is the resolved one, i.e.
 java.util.Date getResolvedPublicationDate()
          the publication date of the module revision should be the date at which it has been published, i.e.
 java.lang.String getStatus()
           
 boolean isDefault()
          Returns true if this descriptor is a default one, i.e.
 boolean isNamespaceUseful()
           
static DefaultModuleDescriptor newDefaultInstance(ModuleRevisionId mrid)
           
static DefaultModuleDescriptor newDefaultInstance(ModuleRevisionId mrid, DependencyArtifactDescriptor[] artifacts)
           
 void setDefault(boolean b)
           
 void setHomePage(java.lang.String homePage)
           
 void setLastModified(long lastModified)
           
 void setModuleRevisionId(ModuleRevisionId revId)
           
 void setNamespace(fr.jayasoft.ivy.namespace.Namespace ns)
           
 void setPublicationDate(java.util.Date publicationDate)
           
 void setResolvedModuleRevisionId(ModuleRevisionId revId)
          This method update the resolved module revision id
 void setResolvedPublicationDate(java.util.Date publicationDate)
          This method update the resolved publication date
 void setStatus(java.lang.String status)
           
 java.lang.String toString()
           
static ModuleDescriptor transformInstance(ModuleDescriptor md, fr.jayasoft.ivy.namespace.Namespace ns)
          Transforms the given module descriptor of the given namespace and return a new module descriptor in the system namespace.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DefaultModuleDescriptor

public DefaultModuleDescriptor(ModuleRevisionId id,
                               java.lang.String status,
                               java.util.Date pubDate)

DefaultModuleDescriptor

public DefaultModuleDescriptor(ModuleRevisionId id,
                               java.lang.String status,
                               java.util.Date pubDate,
                               boolean isDefault)

DefaultModuleDescriptor

public DefaultModuleDescriptor()
IMPORTANT : at least call setModuleRevisionId and setResolvedPublicationDate with instances created by this constructor !

Method Detail

newDefaultInstance

public static DefaultModuleDescriptor newDefaultInstance(ModuleRevisionId mrid)

newDefaultInstance

public static DefaultModuleDescriptor newDefaultInstance(ModuleRevisionId mrid,
                                                         DependencyArtifactDescriptor[] artifacts)

transformInstance

public static ModuleDescriptor transformInstance(ModuleDescriptor md,
                                                 fr.jayasoft.ivy.namespace.Namespace ns)
Transforms the given module descriptor of the given namespace and return a new module descriptor in the system namespace. Note that dependency exclude rules are not converted in system namespace, because they aren't transformable (the name space hasn't the ability to convert regular expressions)

Parameters:
md -
ns -
Returns:

isDefault

public boolean isDefault()
Description copied from interface: ModuleDescriptor
Returns true if this descriptor is a default one, i.e. one generated for a module not actually having one.

Specified by:
isDefault in interface ModuleDescriptor
Returns:

setPublicationDate

public void setPublicationDate(java.util.Date publicationDate)

getPublicationDate

public java.util.Date getPublicationDate()
Description copied from interface: ModuleDescriptor
may be null if unknown in the descriptor itself

Specified by:
getPublicationDate in interface ModuleDescriptor
Returns:

setResolvedPublicationDate

public void setResolvedPublicationDate(java.util.Date publicationDate)
Description copied from interface: ModuleDescriptor
This method update the resolved publication date

Specified by:
setResolvedPublicationDate in interface ModuleDescriptor

getResolvedPublicationDate

public java.util.Date getResolvedPublicationDate()
Description copied from interface: ModuleDescriptor
the publication date of the module revision should be the date at which it has been published, i.e. in general the date of any of its published artifacts, since all published artifact of a module should follow the same publishing cycle.

Specified by:
getResolvedPublicationDate in interface ModuleDescriptor

setModuleRevisionId

public void setModuleRevisionId(ModuleRevisionId revId)

setResolvedModuleRevisionId

public void setResolvedModuleRevisionId(ModuleRevisionId revId)
Description copied from interface: ModuleDescriptor
This method update the resolved module revision id

Specified by:
setResolvedModuleRevisionId in interface ModuleDescriptor

setStatus

public void setStatus(java.lang.String status)

addDependency

public void addDependency(DependencyDescriptor dependency)

addConfiguration

public void addConfiguration(Configuration conf)

addArtifact

public void addArtifact(java.lang.String conf,
                        Artifact artifact)
Artifact configurations are not used since added artifact may not be entirely completed, so its configurations data may not be accurate

Parameters:
conf -
artifact -

getModuleRevisionId

public ModuleRevisionId getModuleRevisionId()
Specified by:
getModuleRevisionId in interface ModuleDescriptor

getResolvedModuleRevisionId

public ModuleRevisionId getResolvedModuleRevisionId()
Description copied from interface: ModuleDescriptor
The module revision id returned here is the resolved one, i.e. it is never a latest one. If the revision has not been resolved, a null revision should be returned by getRevision() of the returned ModuleRevisionId. This revision must be the same as the module descriptor resolved revision id unless no module descriptor is defined

Specified by:
getResolvedModuleRevisionId in interface ModuleDescriptor
Returns:

getStatus

public java.lang.String getStatus()
Specified by:
getStatus in interface ModuleDescriptor

getConfigurations

public Configuration[] getConfigurations()
Description copied from interface: ModuleDescriptor
Returns all the configurations declared by this module as an array. This array is never empty (a 'default' conf is assumed when none is declared in the ivy file)

Specified by:
getConfigurations in interface ModuleDescriptor
Returns:
all the configurations declared by this module as an array.

getConfigurationsNames

public java.lang.String[] getConfigurationsNames()
Specified by:
getConfigurationsNames in interface ModuleDescriptor

getPublicConfigurationsNames

public java.lang.String[] getPublicConfigurationsNames()
Specified by:
getPublicConfigurationsNames in interface ModuleDescriptor

getConfiguration

public Configuration getConfiguration(java.lang.String confName)
Returns the configuration object with the given name in the current module descriptor, null if not found.

Specified by:
getConfiguration in interface ModuleDescriptor
Returns:

getArtifacts

public Artifact[] getArtifacts(java.lang.String conf)
Specified by:
getArtifacts in interface ModuleDescriptor

getAllArtifacts

public Artifact[] getAllArtifacts()

getDependencies

public DependencyDescriptor[] getDependencies()
Specified by:
getDependencies in interface ModuleDescriptor

dependsOn

public boolean dependsOn(ModuleDescriptor md)
Description copied from interface: ModuleDescriptor
Returns true if the module described by this descriptor dependes directly upon the given module descriptor

Specified by:
dependsOn in interface ModuleDescriptor
Returns:

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

setDefault

public void setDefault(boolean b)

addConflictManager

public void addConflictManager(ModuleId moduleId,
                               fr.jayasoft.ivy.matcher.PatternMatcher matcher,
                               ConflictManager manager)
regular expressions as explained in Pattern class may be used in ModuleId organisation and name

Parameters:
moduleId -
matcher -
resolverName -

getConflictManager

public ConflictManager getConflictManager(ModuleId moduleId)
Description copied from interface: ModuleDescriptor
Returns the conflict manager to use for the given ModuleId

Specified by:
getConflictManager in interface ModuleDescriptor
Returns:

addLicense

public void addLicense(License license)

getLicenses

public License[] getLicenses()
Description copied from interface: ModuleDescriptor
Returns the licenses of the module described by this descriptor

Specified by:
getLicenses in interface ModuleDescriptor
Returns:

getHomePage

public java.lang.String getHomePage()
Specified by:
getHomePage in interface ModuleDescriptor

setHomePage

public void setHomePage(java.lang.String homePage)

getLastModified

public long getLastModified()
Specified by:
getLastModified in interface ModuleDescriptor

setLastModified

public void setLastModified(long lastModified)

getNamespace

public fr.jayasoft.ivy.namespace.Namespace getNamespace()

isNamespaceUseful

public boolean isNamespaceUseful()

setNamespace

public void setNamespace(fr.jayasoft.ivy.namespace.Namespace ns)

check

public void check()
Throws an exception if the module descriptor is inconsistent For the moment, only extended configurations existence is checked