feat(jdk8): move files to new folder to avoid resources compiled.
This commit is contained in:
151
jdkSrc/jdk8/javax/management/remote/TargetedNotification.java
Normal file
151
jdkSrc/jdk8/javax/management/remote/TargetedNotification.java
Normal file
@@ -0,0 +1,151 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
package javax.management.remote;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InvalidObjectException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.Serializable;
|
||||
import javax.management.Notification;
|
||||
|
||||
/**
|
||||
* <p>A (Notification, Listener ID) pair.</p>
|
||||
* <p>This class is used to associate an emitted notification
|
||||
* with the listener ID to which it is targeted.</p>
|
||||
*
|
||||
* @since 1.5
|
||||
*/
|
||||
public class TargetedNotification implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 7676132089779300926L;
|
||||
|
||||
// If we replace Integer with int...
|
||||
// /**
|
||||
// * <p>Constructs a <code>TargetedNotification</code> object. The
|
||||
// * object contains a pair (Notification, Listener ID).
|
||||
// * The Listener ID identifies the client listener to which that
|
||||
// * notification is targeted. The client listener ID is one
|
||||
// * previously returned by the connector server in response to an
|
||||
// * <code>addNotificationListener</code> request.</p>
|
||||
// * @param notification Notification emitted from the MBean server.
|
||||
// * @param listenerID The ID of the listener to which this
|
||||
// * notification is targeted.
|
||||
// */
|
||||
// public TargetedNotification(Notification notification,
|
||||
// int listenerID) {
|
||||
// this.notif = notification;
|
||||
// this.id = listenerID;
|
||||
// }
|
||||
|
||||
/**
|
||||
* <p>Constructs a <code>TargetedNotification</code> object. The
|
||||
* object contains a pair (Notification, Listener ID).
|
||||
* The Listener ID identifies the client listener to which that
|
||||
* notification is targeted. The client listener ID is one
|
||||
* previously returned by the connector server in response to an
|
||||
* <code>addNotificationListener</code> request.</p>
|
||||
* @param notification Notification emitted from the MBean server.
|
||||
* @param listenerID The ID of the listener to which this
|
||||
* notification is targeted.
|
||||
* @exception IllegalArgumentException if the <var>listenerID</var>
|
||||
* or <var>notification</var> is null.
|
||||
*/
|
||||
public TargetedNotification(Notification notification,
|
||||
Integer listenerID) {
|
||||
validate(notification, listenerID);
|
||||
// If we replace integer with int...
|
||||
// this(notification,intValue(listenerID));
|
||||
this.notif = notification;
|
||||
this.id = listenerID;
|
||||
}
|
||||
|
||||
/**
|
||||
* <p>The emitted notification.</p>
|
||||
*
|
||||
* @return The notification.
|
||||
*/
|
||||
public Notification getNotification() {
|
||||
return notif;
|
||||
}
|
||||
|
||||
/**
|
||||
* <p>The ID of the listener to which the notification is
|
||||
* targeted.</p>
|
||||
*
|
||||
* @return The listener ID.
|
||||
*/
|
||||
public Integer getListenerID() {
|
||||
return id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a textual representation of this Targeted Notification.
|
||||
*
|
||||
* @return a String representation of this Targeted Notification.
|
||||
**/
|
||||
public String toString() {
|
||||
return "{" + notif + ", " + id + "}";
|
||||
}
|
||||
|
||||
/**
|
||||
* @serial A notification to transmit to the other side.
|
||||
* @see #getNotification()
|
||||
**/
|
||||
private Notification notif;
|
||||
/**
|
||||
* @serial The ID of the listener to which the notification is
|
||||
* targeted.
|
||||
* @see #getListenerID()
|
||||
**/
|
||||
private Integer id;
|
||||
//private final int id;
|
||||
|
||||
// Needed if we use int instead of Integer...
|
||||
// private static int intValue(Integer id) {
|
||||
// if (id == null) throw new
|
||||
// IllegalArgumentException("Invalid listener ID: null");
|
||||
// return id.intValue();
|
||||
// }
|
||||
|
||||
private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException {
|
||||
ois.defaultReadObject();
|
||||
try {
|
||||
validate(this.notif, this.id);
|
||||
} catch (IllegalArgumentException e) {
|
||||
throw new InvalidObjectException(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
private static void validate(Notification notif, Integer id) throws IllegalArgumentException {
|
||||
if (notif == null) {
|
||||
throw new IllegalArgumentException("Invalid notification: null");
|
||||
}
|
||||
if (id == null) {
|
||||
throw new IllegalArgumentException("Invalid listener ID: null");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user