1 /* 2 * The contents of this file are subject to the terms 3 * of the Common Development and Distribution License 4 * (the License). You may not use this file except in 5 * compliance with the License. 6 * 7 * You can obtain a copy of the license at 8 * https://glassfish.dev.java.net/public/CDDLv1.0.html or 9 * glassfish/bootstrap/legal/CDDLv1.0.txt. 10 * See the License for the specific language governing 11 * permissions and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL 14 * Header Notice in each file and include the License file 15 * at glassfish/bootstrap/legal/CDDLv1.0.txt. 16 * If applicable, add the following below the CDDL Header, 17 * with the fields enclosed by brackets [] replaced by 18 * you own identifying information: 19 * "Portions Copyrighted [year] [name of copyright owner]" 20 * 21 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 22 */ 23 package com.sun.enterprise.admin.wsmgmt.agent; 24 25 import com.sun.enterprise.webservice.monitoring.GlobalMessageListener; 26 import com.sun.enterprise.webservice.monitoring.AuthenticationListener; 27 import com.sun.enterprise.webservice.monitoring.WebServiceEngine; 28 import com.sun.enterprise.webservice.monitoring.WebServiceEngineFactory; 29 30 /** 31 * This class interacts with JAX RPC Monitoring SPI and registers Global 32 * Listener to get callbacks. 33 */ 34 public class ListenerManager { 35 36 /** 37 * Registers the Global Listener. 38 */ 39 public void register() { 40 WebServiceEngine wsEng = 41 WebServiceEngineFactory.getInstance().getEngine(); 42 43 GlobalMessageListener gml = new GlobalMessageListenerImpl(); 44 AuthenticationListener al = new AuthenticationListenerImpl(); 45 wsEng.setGlobalMessageListener(gml); 46 wsEng.addAuthListener(al); 47 48 if (wsEng.getGlobalMessageListener() == null) { 49 throw new RuntimeException("Message Listener could not be set"); 50 } 51 } 52 53 public static synchronized ListenerManager getInstance() { 54 if ( lm == null) { 55 lm = new ListenerManager(); 56 } 57 return lm; 58 } 59 60 private static ListenerManager lm = null; 61 62 private ListenerManager() {} 63 } 64