0N/A/*
553N/A * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A *
0N/A * This code is free software; you can redistribute it and/or modify it
0N/A * under the terms of the GNU General Public License version 2 only, as
0N/A * published by the Free Software Foundation. Oracle designates this
0N/A * particular file as subject to the "Classpath" exception as provided
0N/A * by Oracle in the LICENSE file that accompanied this code.
0N/A *
0N/A * This code is distributed in the hope that it will be useful, but WITHOUT
0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A * version 2 for more details (a copy is included in the LICENSE file that
0N/A * accompanied this code).
0N/A *
0N/A * You should have received a copy of the GNU General Public License version
0N/A * 2 along with this work; if not, write to the Free Software Foundation,
553N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
553N/A *
553N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
0N/A * or visit www.oracle.com if you need additional information or have any
0N/A * questions.
0N/A */
0N/A
0N/Apackage com.sun.jmx.snmp.agent;
0N/A
0N/A// jmx imports
0N/A//
0N/Aimport com.sun.jmx.snmp.SnmpValue;
131N/Aimport com.sun.jmx.snmp.SnmpStatusException;
0N/A
0N/A/**
0N/A * <p>
0N/A * This interface defines the methods that must be implemented by an
0N/A * SNMP metadata object that needs to interact with an
0N/A * {@link com.sun.jmx.snmp.agent.SnmpStandardObjectServer} object.
0N/A * </p>
0N/A * <p>
0N/A * All these methods are usually generated by <code>mibgen</code> when
0N/A * run in standard-metadata mode (default).
0N/A * </p>
0N/A * <p><b><i>
0N/A * This interface is used internally between the generated Metadata and
0N/A * the SNMP runtime and you shouldn't need to worry about it, because
0N/A * you will never have to use it directly.
0N/A * </b></i></p>
0N/A *
0N/A * <p><b>This API is a Sun Microsystems internal API and is subject
0N/A * to change without notice.</b></p>
0N/A **/
0N/Apublic interface SnmpStandardMetaServer {
0N/A /**
0N/A * Returns the value of the scalar object identified by the given
0N/A * OID arc.
0N/A *
0N/A * @param arc OID arc of the querried scalar object.
0N/A *
0N/A * @return The <CODE>SnmpValue</CODE> of the scalar object identified
0N/A * by <CODE>arc</CODE>.
0N/A *
0N/A * @param userData A contextual object containing user-data.
0N/A * This object is allocated through the <code>
0N/A * {@link com.sun.jmx.snmp.agent.SnmpUserDataFactory}</code>
0N/A * for each incoming SNMP request.
0N/A *
0N/A * @exception SnmpStatusException If the arc is not valid, or if
0N/A * access is denied.
0N/A *
0N/A **/
0N/A public SnmpValue get(long arc, Object userData)
0N/A throws SnmpStatusException ;
0N/A
0N/A /**
0N/A * Sets the value of the scalar object identified by the given
0N/A * OID arc.
0N/A *
0N/A * @param x New value for the scalar object identified by
0N/A * <CODE>arc</CODE>
0N/A *
0N/A * @param arc OID arc of the scalar object whose value is set.
0N/A *
0N/A * @return The new <CODE>SnmpValue</CODE> of the scalar object
0N/A * identified by <CODE>arc</CODE>.
0N/A *
0N/A * @param userData A contextual object containing user-data.
0N/A * This object is allocated through the <code>
0N/A * {@link com.sun.jmx.snmp.agent.SnmpUserDataFactory}</code>
0N/A * for each incoming SNMP request.
0N/A *
0N/A * @exception SnmpStatusException If the arc is not valid, or if
0N/A * access is denied.
0N/A *
0N/A **/
0N/A public SnmpValue set(SnmpValue x, long arc, Object userData)
0N/A throws SnmpStatusException ;
0N/A
0N/A /**
0N/A * Checks that the new desired value of the scalar object identified
0N/A * by the given OID arc is valid.
0N/A *
0N/A * @param x New value for the scalar object identified by
0N/A * <CODE>arc</CODE>
0N/A *
0N/A * @param arc OID arc of the scalar object whose value is set.
0N/A *
0N/A * @param userData A contextual object containing user-data.
0N/A * This object is allocated through the <code>
0N/A * {@link com.sun.jmx.snmp.agent.SnmpUserDataFactory}</code>
0N/A * for each incoming SNMP request.
0N/A *
0N/A * @exception SnmpStatusException If the arc is not valid, or if
0N/A * access is denied, or if the new desired value is not valid.
0N/A *
0N/A **/
0N/A public void check(SnmpValue x, long arc, Object userData)
0N/A throws SnmpStatusException ;
0N/A
0N/A}
0N/A