001    package com.hammurapi.reasoning;
002    
003    import java.util.Map;
004    
005    /**
006     * Factory for reasoning sessions.
007     * @author Pavel Vlasov
008     *
009     * @param <S> Reasoning session type.
010     */
011    public interface ForwardReasoningSessionFactory<F> {
012    
013            /**
014             * Creates a new reasoning session.
015             * @param properties Vendor-specific session properties.
016             * @return New reasoning session.
017             * @throws ReasoningException
018             */
019            ForwardReasoningSession<F> createSession(Map<?,?> properties) throws ReasoningException;
020    }