001    package biz.hammurapi.rules.jsr94;
002    
003    import javax.rules.ObjectFilter;
004    
005    import biz.hammurapi.rules.CollectionManager;
006    import biz.hammurapi.rules.HandleManager;
007    import biz.hammurapi.rules.KnowledgeBase;
008    import biz.hammurapi.rules.KnowledgeCompactor;
009    
010    /**
011     * Container which holds objects required for rule session functionality.
012     * @author Pavel
013     *
014     */
015    public interface RuleSessionContainer {
016    
017            /**
018             * @return Handle manager. Mandatory.
019             */
020            HandleManager getHandleManager();
021    
022            /**
023             * @return Object filter. Optional.
024             */
025            ObjectFilter getObjectFilter();
026    
027            /**
028             * @return Collection manager. Mandatory.
029             */
030            CollectionManager getCollectionManager();
031    
032            /**
033             * @return Rules.
034             */
035            KnowledgeBase getRules();
036    
037            /**
038             * @return Knowledge compactor. Optional.
039             */
040            KnowledgeCompactor getKnowledgeCompactor();
041    
042            /**
043             * @return Rule set name.
044             */
045            String getName();
046    
047            /**
048             * @return Rule set description.
049             */
050            String getDescription();
051    
052    }