I need the Javadocs or API info for a few SonicMQ jars - Forum - Technology Partner - Progress Community

I need the Javadocs or API info for a few SonicMQ jars

 Forum

I need the Javadocs or API info for a few SonicMQ jars

  • I looked far and wide without any success for the docs for this jars:

    1. sonic_Client.jar
    2. mgmt_client.jar
    3. mgmt_config.jar
    4. sonic_mgmt_client.jar

    For example, when I use file:///C:/Sonic/mq_documentation_7.6.htm, ( file:///C:/Sonic/Docs7.6/api/sonicmq_api/index.html and file:///C:/Sonic/Docs7.6/api/mgmt_api/index.html), I can't locate any information about these classes:

    1. com.sonicsw.mx.config.ConfigServiceException
    2. com.sonicsw.mq.mgmtapi.config.impl.QueuesBean

    Can somebody

  • I pressed the "Enter" button by mistake.

    I would appreciated if you show me were I can get the docs and my employer has licenses for both 7.6 and 8.0 (not sure about 8.5).

    Thanks.

  • You can find the docs in http://communities.progress.com/pcom/docs/DOC-16131

    Christine

  • I can't find what I am looking for. I am looking for the Javadocs that would allow me (using my IDE) to link your jars to your docs, I can quickly lookup the javadocs/api while coding (industry standard).

    What you sent me are links to PDF files which I can't really use (and I don't see anything about SonicMQ, it's mostly ESB and SOA). Javadocs come in 2 flavors: a URL like this one (http://docs.oracle.com/javase/6/docs/api/) or a folder with HTML files that's usually downloaded with the product.

  • They are installed with Sonic Workbench (V7.6 is all I have), but there is no direct link (as far as I've seen) to them. Using Windows Explorer, I followed the directory path C:\Sonic\Docs7.6\api - from there are different subdirectories for different APIs. File overview-frame.html starts you off within each subdirectory.

  • As Jim mentioned, they should be installed with SonicMQ 7.x.

    If you're using SonicMQ 8.x then open /progress_sonic_welcome.htm and follow the 'Download Documentation Packages' link.  Unpack the downloaded archive (e.g. 850_full_documentation.zip) to the Sonic home directory and this will create/populate a Docs8.x sub-directory.  This in turn has the 'api' directory Jim referred to.  You can point your IDE at the relevant javadoc areas within here, e.g. sonicmq_api

  • Using 7.6 version, take a look at sonic_mgmt_client.jar.

    I still can't find the javadoc for some of the classes, actually, all of the classes inside the impl folders.

    C:\MyProjects\sonic7\lib\sonic_mgmt_client\com\sonicsw\mq\mgmtapi\config\impl

    C:\MyProjects\sonic7\lib\sonic_mgmt_client\com\sonicsw\mq\mgmtapi\runtime\impl

    C:\MyProjects\sonic7\lib\sonic_mgmt_client\com\sonicsw\mq\mgmtapi\config\gen\impl

    C:\MyProjects\sonic7\lib\sonic_mgmt_client\com\sonicsw\mq\common\runtime\impl

    And here are some specific classes (I have spent way too much time looking for the javadocs)

    BrokerBean.class

    RouteDirectBean.class

    RouteDirectSoapBean.class

    WSProtocolBean.class

    ...

  • You want to write your management application using the interfaces, not the implementation classes. Starting from the factories, like com.sonicsw.mq.mgmtapi.config.MQMgmtBeanFactory, you have methods that create beans or retrieve existing beans, all in terms of the interface classes, which is why it is the interface classes that are the ones that are documented. Yes, the implementation classes are also in those client jars, but they are not documented on purpose. In other words, you shouldn't need to refer to the implementation classes. If you have written an app and the API led you to a class that you couldn't find in the doc, could you post the code? So, instead of BrokerBean, you want IBrokerBean, for instance.

  • I hope that this example would clearly illustrate my issue: Please, open your "Progress SonicMQ Administrative Programming Guide V7.6", page 44:

    "...

    IQueuesBean.IQueuesSetType queues = broker.getQueuesBean().getQueues();

    IQueuesBean.IQueueAttributes queue;

    ...

    "

    Why would I need to reinvent the wheel? In this specific case, I just need the queues. You have a perfectly working object that does e.x.a.c.t.l.y what I need.
    All I am asking for is to have access to the missing API. For example, I would like to know what other functionality does QueuesBean have?. At this stage I am not looking for some custom solutions, all I need is to use what you already have

    Thanks

  • To find the available methods for the example you give, look at IQueuesBean in the Mgmt API doc's:

      http://documentation.progress.com/output/Sonic/8.5.0/Docs8.5/api/mgmt_api/index.html

    Here's the specific page (missing the surrounding frames):

      http://documentation.progress.com/output/Sonic/8.5.0/Docs8.5/api/mgmt_api/com/sonicsw/mq/mgmtapi/config/IQueuesBean.html

    The Mgmt API doc's aren't always particularly easy to follow due to the fairly complex class hierarchies.  In this case getQueues() is inherited from IAbstractQueuesBean, a recurrent pattern you'll see across the Mgmt API.  getQueues() is, I suspect, the only method you're likely to use from IQueuesBean.

    Taking another example, if you look at the API doc' for IQueuesBean.IQueueAttributes you'll see the 'interesting' methods are inherited from IAbstractQueuesBean.IAbstractQueueAttributes.  Here you'll find getQueueName(), getQueueMaxSize(), getQueueSaveThreshold(), etc...

    As Mari's already stated, when coding you should refer to the main interface (IQueuesBean in this case), not the abstract interface (IAbstractQueuesBean), nor the internal implementation (QueuesBean).

    I hope this is some help.

    Thanks, Paul.