EMMA Coverage Report (generated Fri Jan 04 16:14:51 CET 2013)
[all classes][org.jomc.ant]

COVERAGE SUMMARY FOR SOURCE FILE [ValidateModelTask.java]

nameclass, %method, %block, %line, %
ValidateModelTask.java100% (1/1)100% (3/3)86%  (59/69)88%  (14/16)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class ValidateModelTask100% (1/1)100% (3/3)86%  (59/69)88%  (14/16)
executeTask (): void 100% (1/1)84%  (52/62)85%  (11/13)
ValidateModelTask (): void 100% (1/1)100% (3/3)100% (2/2)
clone (): ValidateModelTask 100% (1/1)100% (4/4)100% (1/1)

1/*
2 *   Copyright (C) Christian Schulte, 2005-206
3 *   All rights reserved.
4 *
5 *   Redistribution and use in source and binary forms, with or without
6 *   modification, are permitted provided that the following conditions
7 *   are met:
8 *
9 *     o Redistributions of source code must retain the above copyright
10 *       notice, this list of conditions and the following disclaimer.
11 *
12 *     o Redistributions in binary form must reproduce the above copyright
13 *       notice, this list of conditions and the following disclaimer in
14 *       the documentation and/or other materials provided with the
15 *       distribution.
16 *
17 *   THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
18 *   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
19 *   AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
20 *   THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
21 *   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22 *   NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26 *   THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 *
28 *   $JOMC: ValidateModelTask.java 4613 2012-09-22 10:07:08Z schulte $
29 *
30 */
31package org.jomc.ant;
32 
33import org.apache.tools.ant.BuildException;
34import org.jomc.modlet.Model;
35import org.jomc.modlet.ModelContext;
36import org.jomc.modlet.ModelException;
37import org.jomc.modlet.ModelValidationReport;
38 
39/**
40 * Task for validating model objects.
41 *
42 * @author <a href="mailto:cs@schulte.it">Christian Schulte</a>
43 * @version $JOMC: ValidateModelTask.java 4613 2012-09-22 10:07:08Z schulte $
44 */
45public final class ValidateModelTask extends JomcModelTask
46{
47 
48    /** Creates a new {@code ValidateModelTask} instance. */
49    public ValidateModelTask()
50    {
51        super();
52    }
53 
54    /**
55     * Validates a model.
56     *
57     * @throws BuildException if validating a model fails.
58     */
59    @Override
60    public void executeTask() throws BuildException
61    {
62        try
63        {
64            this.log( Messages.getMessage( "validatingModel", this.getModel() ) );
65 
66            final ClassLoader classLoader = this.newProjectClassLoader();
67            final ModelContext context = this.newModelContext( classLoader );
68            final Model model = context.findModel( this.getModel() );
69            final ModelValidationReport report = context.validateModel( model );
70            this.logValidationReport( context, report );
71 
72            if ( !report.isModelValid() )
73            {
74                throw new BuildException( Messages.getMessage( "modelValidationFailure" ), this.getLocation() );
75            }
76 
77            this.log( Messages.getMessage( "modelValidationSuccess" ) );
78        }
79        catch ( final ModelException e )
80        {
81            throw new BuildException( Messages.getMessage( e ), e, this.getLocation() );
82        }
83    }
84 
85    /** {@inheritDoc} */
86    @Override
87    public ValidateModelTask clone()
88    {
89        return (ValidateModelTask) super.clone();
90    }
91 
92}

[all classes][org.jomc.ant]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov