Clover coverage report - Drools - 2.0-rc2
Coverage timestamp: Wed May 11 2005 07:12:26 BST
file stats: LOC: 152   Methods: 0
NCLOC: 25   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
SemanticModule.java - - - -
coverage
 1    package org.drools.smf;
 2   
 3    /*
 4    * $Id: SemanticModule.java,v 1.9 2005/02/04 02:13:38 mproctor Exp $
 5    *
 6    * Copyright 2001-2003 (C) The Werken Company. All Rights Reserved.
 7    *
 8    * Redistribution and use of this software and associated documentation
 9    * ("Software"), with or without modification, are permitted provided that the
 10    * following conditions are met:
 11    *
 12    * 1. Redistributions of source code must retain copyright statements and
 13    * notices. Redistributions must also contain a copy of this document.
 14    *
 15    * 2. Redistributions in binary form must reproduce the above copyright notice,
 16    * this list of conditions and the following disclaimer in the documentation
 17    * and/or other materials provided with the distribution.
 18    *
 19    * 3. The name "drools" must not be used to endorse or promote products derived
 20    * from this Software without prior written permission of The Werken Company.
 21    * For written permission, please contact bob@werken.com.
 22    *
 23    * 4. Products derived from this Software may not be called "drools" nor may
 24    * "drools" appear in their names without prior written permission of The Werken
 25    * Company. "drools" is a trademark of The Werken Company.
 26    *
 27    * 5. Due credit should be given to The Werken Company. (http://werken.com/)
 28    *
 29    * THIS SOFTWARE IS PROVIDED BY THE WERKEN COMPANY AND CONTRIBUTORS ``AS IS''
 30    * AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 31    * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 32    * ARE DISCLAIMED. IN NO EVENT SHALL THE WERKEN COMPANY OR ITS CONTRIBUTORS BE
 33    * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 34    * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 35    * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 36    * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 37    * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 38    * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 39    * POSSIBILITY OF SUCH DAMAGE.
 40    *
 41    */
 42   
 43    import java.util.Set;
 44   
 45    /**
 46    * Collection of entities forming a semantic module.
 47    *
 48    * @see org.drools.spi
 49    *
 50    * @author <a href="mailto:bob@werken.com">bob mcwhirter </a>
 51    */
 52    public interface SemanticModule
 53    {
 54    // ----------------------------------------------------------------------
 55    // Constants
 56    // ----------------------------------------------------------------------
 57   
 58    /**
 59    * Empty <code>SemanticModule</code> array.
 60    */
 61    SemanticModule[] EMPTY_ARRAY = new SemanticModule[0];
 62   
 63    // ----------------------------------------------------------------------
 64    // Interface
 65    // ----------------------------------------------------------------------
 66   
 67    /**
 68    * Retrieve the URI that identifies this semantic module.
 69    *
 70    * @return The URI.
 71    */
 72    String getUri();
 73   
 74    String getType(String name);
 75   
 76    RuleFactory getRuleFactory(String name);
 77   
 78    Set getRuleFactoryNames();
 79   
 80    /**
 81    * Retrieve a semantic object type by name.
 82    *
 83    * @param name the name.
 84    *
 85    * @return The object type implementation or <code>null</code> if none is
 86    * bound to the name.
 87    */
 88    ObjectTypeFactory getObjectTypeFactory(String name);
 89   
 90    /**
 91    * Retrieve the set of all object type names.
 92    *
 93    * @return The set of names.
 94    */
 95    Set getObjectTypeFactoryNames();
 96   
 97    /**
 98    * Retrieve a semantic condition by name.
 99    *
 100    * @param name the name.
 101    *
 102    * @return The condition implementation or <code>null</code> if none is
 103    * bound to the name.
 104    */
 105    ConditionFactory getConditionFactory(String name);
 106   
 107    /**
 108    * Retrieve the set of all condition names.
 109    *
 110    * @return The set of names.
 111    */
 112    Set getConditionFactoryNames();
 113   
 114    /**
 115    * Retrieve a semantic consequence by name.
 116    *
 117    * @param name the name.
 118    *
 119    * @return The consequence implementation or <code>null</code> if none is
 120    * bound to the name.
 121    */
 122    ConsequenceFactory getConsequenceFactory(String name);
 123   
 124    /**
 125    * Retrieve the set of all consequence names.
 126    *
 127    * @return The set of names.
 128    */
 129    Set getConsequenceFactoryNames();
 130   
 131    DurationFactory getDurationFactory(String name);
 132   
 133    Set getDurationFactoryNames();
 134   
 135   
 136    void addImportEntryFactory(String name, ImportEntryFactory factory);
 137   
 138    ImportEntryFactory getImportEntryFactory(String name);
 139   
 140    Set getImportEntryFactoryNames();
 141   
 142    void addApplicationDataFactory(String name, ApplicationDataFactory factory);
 143   
 144    ApplicationDataFactory getApplicationDataFactory(String name);
 145   
 146    Set getApplicationDataFactoryNames();
 147   
 148    FunctionsFactory getFunctionsFactory(String name);
 149   
 150    Set getFunctionsFactoryNames();
 151   
 152    }