Architecting multi queue / multi topic subscriber component

In a nutshell we are trying to do a generic interface for interacting with JCSMP from our Apps.

/**
 * Represents one tcp session/connection to the solace servers.
 */
public interface SolaceSessionAPI {

    /**
     * Subscribes to the specified solace topic. The message updates would be received by the specified listener. 
     * @param topic
     * @param listener
     */
    void subscribeSolTopic(String topic, CustomXMLMessageListener listener);

    /**
     * Subscribes to the specified solace queue. The message updates would be received by the specified listener. 
     * @param topic
     * @param listener
     */
    void subscribeSolQueue(String queueName, CustomXMLMessageListener listener);

   

    /**
     * Subscribe to the specified solace cache topic. The message updates would be received by the specified listener. cacheEventListener gives us cache update events such as onComplete and onException. 
     * @param topic
     * @param listener 
     */
    void subscribeSolCacheTopic(String topic, CustomXMLMessageListener listener, MyCacheRequestListener cacheEventListener);

    
 }