@ Override public JmsTopic createTopic ( String name ) throws JMSException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( this , tc , "createTopic" , name ) ; JmsTopic topic = null ; // if name string is null throw exception if ( name == null ) { throw ( InvalidDestinationException ) JmsErrorUtils . newThrowable ( InvalidDestinationException . class , "INVALID_VALUE_CWSIA0003" , new Object [ ] { "Topic name" , null } , tc ) ; } // if name is "queue://" throw exception if ( name != null && name . startsWith ( JmsQueueImpl . QUEUE_PREFIX ) ) { throw ( InvalidDestinationException ) JmsErrorUtils . newThrowable ( InvalidDestinationException . class , "MALFORMED_DESCRIPTOR_CWSIA0047" , new Object [ ] { "Topic" , name } , tc ) ; } name = name . trim ( ) ; topic = ( JmsTopic ) destCreator . createDestinationFromString ( name , URIDestinationCreator . DestType . TOPIC ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( this , tc , "createTopic" , topic ) ; return topic ; }
This method is called by the application to create a jms administered topic object .