eu.lindenbaum.maven
Class DefaultTargetLayout

java.lang.Object
  extended by eu.lindenbaum.maven.DefaultTargetLayout
All Implemented Interfaces:
TargetLayout

public class DefaultTargetLayout
extends Object
implements TargetLayout

Implementation of the TargetLayout bean defining the project's build directory layout.

Since:
2.1.0
Author:
Tobias Schlager

Constructor Summary
DefaultTargetLayout(org.apache.maven.project.MavenProject project)
           Defines the layout of the target directory relevant for maven-erlang projects.
 
Method Summary
 File appFile()
          Returns the application resource file of an application project that will be packaged.
 File appupFile()
          Returns the application upgrade file of an application project that will be packaged.The returned File is not guaranteed to exist.
 File backendLog()
          Returns a File used to write the output generated from the plugin's backend nodes to.
 File base()
          Returns the base directory for the build artifacts.
 File coverageReports()
          Returns the directory where coverage reports will be put.
 File dialyzerOk()
          Returns a File used by the dialyzer to indicate whether the last dialyzer run was ok (no warnings/errors).
 File ebin()
          Returns the directory where the compiled sources will be placed into.
 File include()
          Returns the directory where includes to package will be put into.
 File lib()
          Returns the directory where dependencies get unpacked into.
 File overviewEdoc()
          Returns the path to the application overview file overview.edoc.
 File priv()
          Returns the directory where private resources will be put into.
 File profilingReports()
          Returns the directory where profiling reports will be put.
 File project()
          Returns the base directory for the project packaging.
 File projectArtifact()
          Returns the File representing the main build artifact of the project.
 File relFile()
          Returns the release file of a release project that will be packaged.
 File relupFile()
          Returns the release upgrade file of a release project that will be packaged.
 File src()
          Returns the directory where sources to package will be put into.
 File surefireReports()
          Returns the directory where surefire test reports will be put.
 File sysConfigFile()
          Returns the system configuration file of a release project that will be packaged.
 File test()
          Returns the base directory for the tests.
 File testEbin()
          Returns the directory where the compiled test sources and recompiled sources will be placed into.
 File testInclude()
          Returns the directory where the include for test compilation will be placed into.
 File testPriv()
          Returns the directory where the main and test resources will be put into (test resources will override main resources).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultTargetLayout

public DefaultTargetLayout(org.apache.maven.project.MavenProject project)

Defines the layout of the target directory relevant for maven-erlang projects. Standard layout is:

 target
   +-- [ARTIFACTID]-[Version]
   +-- [ARTIFACTID]-[Version]/ebin (*.beam, [ARTIFACTID].app, [ARTIFACTID].appup)
   +-- [ARTIFACTID]-[Version]/include (*.hrl)
   +-- [ARTIFACTID]-[Version]/priv (*)
   +-- [ARTIFACTID]-[Version]/src (*.erl)
   +-- [ARTIFACTID]-[Version]-test
   +-- [ARTIFACTID]-[Version]-test/ebin (*.beam)
   +-- [ARTIFACTID]-[Version]-test/include (*.hrl)
   +-- [ARTIFACTID]-[Version]-test/priv (*)
   +-- surefire-reports (*.html)
   +-- profiling-reports (*.html)
   +-- relup
   +-- sys.config
   +-- [ARTIFACTID].rel
   +-- .dialyzer.ok
   +-- backend.log
 

Parameters:
project - The project to build the target layout for.
Method Detail

base

public File base()
Description copied from interface: TargetLayout
Returns the base directory for the build artifacts.

Specified by:
base in interface TargetLayout

lib

public File lib()
Description copied from interface: TargetLayout
Returns the directory where dependencies get unpacked into.

Specified by:
lib in interface TargetLayout

projectArtifact

public File projectArtifact()
Description copied from interface: TargetLayout
Returns the File representing the main build artifact of the project. This will be used for mvn install/deploy.

Specified by:
projectArtifact in interface TargetLayout

dialyzerOk

public File dialyzerOk()
Description copied from interface: TargetLayout
Returns a File used by the dialyzer to indicate whether the last dialyzer run was ok (no warnings/errors).

Specified by:
dialyzerOk in interface TargetLayout

backendLog

public File backendLog()
Description copied from interface: TargetLayout
Returns a File used to write the output generated from the plugin's backend nodes to.

Specified by:
backendLog in interface TargetLayout

project

public File project()
Description copied from interface: TargetLayout
Returns the base directory for the project packaging.

Specified by:
project in interface TargetLayout

appFile

public File appFile()
Description copied from interface: TargetLayout
Returns the application resource file of an application project that will be packaged. The returned File is not guaranteed to exist.

Specified by:
appFile in interface TargetLayout

appupFile

public File appupFile()
Description copied from interface: TargetLayout
Returns the application upgrade file of an application project that will be packaged.The returned File is not guaranteed to exist.

Specified by:
appupFile in interface TargetLayout

ebin

public File ebin()
Description copied from interface: TargetLayout
Returns the directory where the compiled sources will be placed into.

Specified by:
ebin in interface TargetLayout

include

public File include()
Description copied from interface: TargetLayout
Returns the directory where includes to package will be put into.

Specified by:
include in interface TargetLayout

priv

public File priv()
Description copied from interface: TargetLayout
Returns the directory where private resources will be put into.

Specified by:
priv in interface TargetLayout

src

public File src()
Description copied from interface: TargetLayout
Returns the directory where sources to package will be put into.

Specified by:
src in interface TargetLayout

test

public File test()
Description copied from interface: TargetLayout
Returns the base directory for the tests. This will be accessibly during the test phase by calling code:lib_dir($APPNAME).

Specified by:
test in interface TargetLayout

testEbin

public File testEbin()
Description copied from interface: TargetLayout
Returns the directory where the compiled test sources and recompiled sources will be placed into.

Specified by:
testEbin in interface TargetLayout

testInclude

public File testInclude()
Description copied from interface: TargetLayout
Returns the directory where the include for test compilation will be placed into.

Specified by:
testInclude in interface TargetLayout

testPriv

public File testPriv()
Description copied from interface: TargetLayout
Returns the directory where the main and test resources will be put into (test resources will override main resources). This will be accessibly during the test phase by calling code:lib_dir($APPNAME, priv).

Specified by:
testPriv in interface TargetLayout

overviewEdoc

public File overviewEdoc()
Description copied from interface: TargetLayout
Returns the path to the application overview file overview.edoc.

Specified by:
overviewEdoc in interface TargetLayout

surefireReports

public File surefireReports()
Description copied from interface: TargetLayout
Returns the directory where surefire test reports will be put.

Specified by:
surefireReports in interface TargetLayout

coverageReports

public File coverageReports()
Description copied from interface: TargetLayout
Returns the directory where coverage reports will be put.

Specified by:
coverageReports in interface TargetLayout

profilingReports

public File profilingReports()
Description copied from interface: TargetLayout
Returns the directory where profiling reports will be put.

Specified by:
profilingReports in interface TargetLayout

relFile

public File relFile()
Description copied from interface: TargetLayout
Returns the release file of a release project that will be packaged. The returned File is not guaranteed to exist.

Specified by:
relFile in interface TargetLayout

relupFile

public File relupFile()
Description copied from interface: TargetLayout
Returns the release upgrade file of a release project that will be packaged. The returned File is not guaranteed to exist.

Specified by:
relupFile in interface TargetLayout

sysConfigFile

public File sysConfigFile()
Description copied from interface: TargetLayout
Returns the system configuration file of a release project that will be packaged. The returned File is not guaranteed to exist.

Specified by:
sysConfigFile in interface TargetLayout


Copyright © 2012 Lindenbaum GmbH. All Rights Reserved.