docs: protected SIDestinationAddress createTemporaryDestination(Distribution distribution, String destinationPrefix) throws SIResourceException, SIMPDestinationAlreadyExistsException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "createTemporaryDestination", new Object[] { destinationPrefix, distribution });
  
          String name = createNewTemporaryDestinationName(destinationPrefix, messageProcessor.getMessagingEngineUuid(), distribution);
  
          DestinationType destinationType = DestinationType.QUEUE;
  
          if (distribution == Distribution.ALL)
          {
              destinationType = DestinationType.TOPICSPACE;
          }
  
          // Get destination definition and set specific attributes
          DestinationDefinition tempDestDefinition = messageProcessor.createDestinationDefinition(destinationType, name);
  
          // Set destination attributes applicable to temporary destinations
          tempDestDefinition.setMaxReliability(Reliability.RELIABLE_NONPERSISTENT);
          tempDestDefinition.setDefaultReliability(Reliability.RELIABLE_NONPERSISTENT);
          tempDestDefinition.setUUID(new SIBUuid12());
  
          // If the temporary destination name exists, then this is an error situation and
          // an exception is thrown.
          if (destinationExists(name, messageProcessor.getMessagingEngineBus()))
          {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "createTemporaryDestination", "Destination with name " + name + " already exists");
  
              SibTr.error(tc, "INTERNAL_MESSAGING_ERROR_CWSIP0001",
                          new Object[] { "com.ibm.ws.sib.processor.impl.DestinationManager", "1:2120:1.508.1.7" });
  
              throw new SIErrorException(
                              nls.getFormattedMessage(
                                                      "INTERNAL_MESSAGING_ERROR_CWSIP0001",
                                                      new Object[] { "com.ibm.ws.sib.processor.impl.DestinationManager", "1:2125:1.508.1.7" },
                                                      null));
          }
  
          // Create the new SIDestinationAddress
          SIDestinationAddress address =
                          (
                          (SIDestinationAddressFactory) MessageProcessor.getSingletonInstance(
                                          SIMPConstants.SI_DESTINATION_ADDRESS_FACTORY)).createSIDestinationAddress(
                                                                                                                    name,
                                                                                                                    true);
  
          ((JsDestinationAddress) address).setBusName(messageProcessor.getMessagingEngineBus());
          ((JsDestinationAddress) address).setME(messageProcessor.getMessagingEngineUuid());
  
          Set<String> destinationLocalizingSet = new HashSet<String>();
          destinationLocalizingSet.add(messageProcessor.getMessagingEngineUuid().toString());
  
          LocalizationDefinition localizationDefinition =
                          messageProcessor.createLocalizationDefinition(tempDestDefinition.getName());
          localizationDefinition.setDestinationHighMsgs(messageProcessor.getHighMessageThreshold());
  
          createDestinationLocalization(
                                        tempDestDefinition,
                                        localizationDefinition,
                                        destinationLocalizingSet,
                                        true);
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "createTemporaryDestination", address);
          return address;
      }