当前位置: 首页>>代码示例>>Java>>正文


Java SnmpDefinitions.pduWalkRequest方法代码示例

本文整理汇总了Java中com.sun.jmx.snmp.SnmpDefinitions.pduWalkRequest方法的典型用法代码示例。如果您正苦于以下问题:Java SnmpDefinitions.pduWalkRequest方法的具体用法?Java SnmpDefinitions.pduWalkRequest怎么用?Java SnmpDefinitions.pduWalkRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.sun.jmx.snmp.SnmpDefinitions的用法示例。


在下文中一共展示了SnmpDefinitions.pduWalkRequest方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: check

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
/**
 * Checks if a <CODE>set</CODE> operation can be performed.
 * If the operation cannot be performed, the method will raise a
 * <CODE>SnmpStatusException</CODE>.
 *
 */
// Implements the method defined in SnmpMibAgent. See SnmpMibAgent
// for java-doc
//
@Override
public void check(SnmpMibRequest req) throws SnmpStatusException {

    final int reqType = SnmpDefinitions.pduWalkRequest;
    // Builds the request tree: creation is allowed, operation
    // is atomic.
    SnmpRequestTree handlers = getHandlers(req,true,true,reqType);

    SnmpRequestTree.Handler h;
    SnmpMibNode meta;

    if (SNMP_ADAPTOR_LOGGER.isLoggable(Level.FINEST)) {
        SNMP_ADAPTOR_LOGGER.logp(Level.FINEST, SnmpMib.class.getName(),
                "check", "Processing handlers for CHECK... ");
    }

    // For each sub-request stored in the request-tree, invoke the
    // check() method.
    for (Enumeration<SnmpRequestTree.Handler> eh=handlers.getHandlers();eh.hasMoreElements();) {
        h = eh.nextElement();

        // Gets the Meta node. It can be either a Group Meta or a
        // Table Meta.
        //
        meta = handlers.getMetaNode(h);

        // Gets the depth of the Meta node in the OID tree
        final int depth = handlers.getOidDepth(h);

        for (Enumeration<SnmpMibSubRequest> rqs=handlers.getSubRequests(h);
             rqs.hasMoreElements();) {

            // Invoke the check() operation
            meta.check(rqs.nextElement(),depth);
        }
    }

    // Optimization: we're going to pass the whole SnmpRequestTree
    // to the "set" method, so that we don't have to rebuild it there.
    //
    if (req instanceof SnmpMibRequestImpl) {
        ((SnmpMibRequestImpl)req).setRequestTree(handlers);
    }

}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:55,代码来源:SnmpMib.java

示例2: addVarbind

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
public void addVarbind(SnmpVarBind varbind, SnmpOid entryoid,
                               boolean isnew, SnmpVarBind statusvb)
            throws SnmpStatusException {
            Vector<SnmpVarBind> v = null;
            SnmpVarBind rs = statusvb;

            if (entryoids == null) {
//              entryoids = new ArrayList();
//              entrylists = new ArrayList();
//              isentrynew = new ArrayList();
                v = new Vector<>();
//              entryoids.add(entryoid);
//              entrylists.add(v);
//              isentrynew.add(new Boolean(isnew));
                add(0,entryoid,v,isnew,rs);
            } else {
                // int pos = findOid(entryoids,entryoid);
                // int pos = findOid(entryoids,entrycount,entryoid);
                final int pos =
                    getInsertionPoint(entryoids,entrycount,entryoid);
                if (pos > -1 && pos < entrycount &&
                    entryoid.compareTo(entryoids[pos]) == 0) {
                    v  = entrylists[pos];
                    rs = rowstatus[pos];
                } else {
                    // if (pos == -1 || pos >= entryoids.size() ) {
                    // if (pos == -1 || pos >= entrycount ) {
                    // pos = getInsertionPoint(entryoids,entryoid);
                    // pos = getInsertionPoint(entryoids,entrycount,entryoid);
                    v = new Vector<>();
//                  entryoids.add(pos,entryoid);
//                  entrylists.add(pos,v);
//                  isentrynew.add(pos,new Boolean(isnew));
                    add(pos,entryoid,v,isnew,rs);
                }
//              } else v = (Vector) entrylists.get(pos);
                    // } else v = entrylists[pos];
                if (statusvb != null) {
                    if ((rs != null) && (rs != statusvb) &&
                        ((type == SnmpDefinitions.pduWalkRequest) ||
                         (type == SnmpDefinitions.pduSetRequestPdu))) {
                        throw new SnmpStatusException(
                              SnmpStatusException.snmpRspInconsistentValue);
                    }
                    rowstatus[pos] = statusvb;
                }
            }

            // We do not include the status variable in the varbind,
            // because we're going to set it separately...
            //
            if (statusvb != varbind)
                v.addElement(varbind);
        }
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:55,代码来源:SnmpRequestTree.java

示例3: setPduType

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
void setPduType(int pduType) {
    type = pduType;
    setreqflag = ((pduType == SnmpDefinitions.pduWalkRequest) ||
        (pduType == SnmpDefinitions.pduSetRequestPdu));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:6,代码来源:SnmpRequestTree.java

示例4: mapErrorStatusToV1

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
static final int mapErrorStatusToV1(int errorStatus, int reqPduType) {
    // Map v2 codes onto v1 codes
    //
    if (errorStatus == SnmpDefinitions.snmpRspNoError)
        return SnmpDefinitions.snmpRspNoError;

    if (errorStatus == SnmpDefinitions.snmpRspGenErr)
        return SnmpDefinitions.snmpRspGenErr;

    if (errorStatus == SnmpDefinitions.snmpRspNoSuchName)
        return SnmpDefinitions.snmpRspNoSuchName;

    if ((errorStatus == SnmpStatusException.noSuchInstance) ||
        (errorStatus == SnmpStatusException.noSuchObject)   ||
        (errorStatus == SnmpDefinitions.snmpRspNoAccess)    ||
        (errorStatus == SnmpDefinitions.snmpRspInconsistentName) ||
        (errorStatus == SnmpDefinitions.snmpRspAuthorizationError)){

        return SnmpDefinitions.snmpRspNoSuchName;

    } else if ((errorStatus ==
                SnmpDefinitions.snmpRspAuthorizationError)         ||
               (errorStatus == SnmpDefinitions.snmpRspNotWritable)) {

        if (reqPduType == SnmpDefinitions.pduWalkRequest)
            return SnmpDefinitions.snmpRspReadOnly;
        else
            return SnmpDefinitions.snmpRspNoSuchName;

    } else if ((errorStatus == SnmpDefinitions.snmpRspNoCreation)) {

            return SnmpDefinitions.snmpRspNoSuchName;

    } else if ((errorStatus == SnmpDefinitions.snmpRspWrongType)      ||
               (errorStatus == SnmpDefinitions.snmpRspWrongLength)    ||
               (errorStatus == SnmpDefinitions.snmpRspWrongEncoding)  ||
               (errorStatus == SnmpDefinitions.snmpRspWrongValue)     ||
               (errorStatus == SnmpDefinitions.snmpRspWrongLength)    ||
               (errorStatus ==
                SnmpDefinitions.snmpRspInconsistentValue)) {

        if ((reqPduType == SnmpDefinitions.pduSetRequestPdu) ||
            (reqPduType == SnmpDefinitions.pduWalkRequest))
            return SnmpDefinitions.snmpRspBadValue;
        else
            return SnmpDefinitions.snmpRspNoSuchName;

    } else if ((errorStatus ==
                SnmpDefinitions.snmpRspResourceUnavailable) ||
               (errorStatus ==
                SnmpDefinitions.snmpRspCommitFailed)        ||
               (errorStatus == SnmpDefinitions.snmpRspUndoFailed)) {

        return SnmpDefinitions.snmpRspGenErr;

    }

    // At this point we should have a V1 error code
    //
    if (errorStatus == SnmpDefinitions.snmpRspTooBig)
        return SnmpDefinitions.snmpRspTooBig;

    if( (errorStatus == SnmpDefinitions.snmpRspBadValue) ||
        (errorStatus == SnmpDefinitions.snmpRspReadOnly)) {
        if ((reqPduType == SnmpDefinitions.pduSetRequestPdu) ||
            (reqPduType == SnmpDefinitions.pduWalkRequest))
            return errorStatus;
        else
            return SnmpDefinitions.snmpRspNoSuchName;
    }

    // We have a snmpRspGenErr, or something which is not defined
    // in RFC1905 => return a snmpRspGenErr
    //
    return SnmpDefinitions.snmpRspGenErr;

}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:78,代码来源:SnmpSubRequestHandler.java

示例5: mapErrorStatusToV2

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
static final int mapErrorStatusToV2(int errorStatus, int reqPduType) {
    // Map v1 codes onto v2 codes
    //
    if (errorStatus == SnmpDefinitions.snmpRspNoError)
        return SnmpDefinitions.snmpRspNoError;

    if (errorStatus == SnmpDefinitions.snmpRspGenErr)
        return SnmpDefinitions.snmpRspGenErr;

    if (errorStatus == SnmpDefinitions.snmpRspTooBig)
        return SnmpDefinitions.snmpRspTooBig;

    // For get / getNext / getBulk the only global error
    // (PDU-level) possible is genErr.
    //
    if ((reqPduType != SnmpDefinitions.pduSetRequestPdu) &&
        (reqPduType != SnmpDefinitions.pduWalkRequest)) {
        if(errorStatus == SnmpDefinitions.snmpRspAuthorizationError)
            return errorStatus;
        else
            return SnmpDefinitions.snmpRspGenErr;
    }

    // Map to noSuchName
    //      if ((errorStatus == SnmpDefinitions.snmpRspNoSuchName) ||
    //   (errorStatus == SnmpStatusException.noSuchInstance) ||
    //  (errorStatus == SnmpStatusException.noSuchObject))
    //  return SnmpDefinitions.snmpRspNoSuchName;

    // SnmpStatusException.noSuchInstance and
    // SnmpStatusException.noSuchObject can't happen...

    if (errorStatus == SnmpDefinitions.snmpRspNoSuchName)
        return SnmpDefinitions.snmpRspNoAccess;

    // Map to notWritable
    if (errorStatus == SnmpDefinitions.snmpRspReadOnly)
            return SnmpDefinitions.snmpRspNotWritable;

    // Map to wrongValue
    if (errorStatus == SnmpDefinitions.snmpRspBadValue)
        return SnmpDefinitions.snmpRspWrongValue;

    // Other valid V2 codes
    if ((errorStatus == SnmpDefinitions.snmpRspNoAccess) ||
        (errorStatus == SnmpDefinitions.snmpRspInconsistentName) ||
        (errorStatus == SnmpDefinitions.snmpRspAuthorizationError) ||
        (errorStatus == SnmpDefinitions.snmpRspNotWritable) ||
        (errorStatus == SnmpDefinitions.snmpRspNoCreation) ||
        (errorStatus == SnmpDefinitions.snmpRspWrongType) ||
        (errorStatus == SnmpDefinitions.snmpRspWrongLength) ||
        (errorStatus == SnmpDefinitions.snmpRspWrongEncoding) ||
        (errorStatus == SnmpDefinitions.snmpRspWrongValue) ||
        (errorStatus == SnmpDefinitions.snmpRspWrongLength) ||
        (errorStatus == SnmpDefinitions.snmpRspInconsistentValue) ||
        (errorStatus == SnmpDefinitions.snmpRspResourceUnavailable) ||
        (errorStatus == SnmpDefinitions.snmpRspCommitFailed) ||
        (errorStatus == SnmpDefinitions.snmpRspUndoFailed))
        return errorStatus;

    // Ivalid V2 code => genErr
    return SnmpDefinitions.snmpRspGenErr;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:64,代码来源:SnmpSubRequestHandler.java

示例6: check

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
/**
 * Checks if a <CODE>set</CODE> operation can be performed.
 * If the operation cannot be performed, the method will raise a
 * <CODE>SnmpStatusException</CODE>.
 *
 */
// Implements the method defined in SnmpMibAgent. See SnmpMibAgent
// for java-doc
//
public void check(SnmpMibRequest req) throws SnmpStatusException {

    final int reqType = SnmpDefinitions.pduWalkRequest;
    // Builds the request tree: creation is allowed, operation
    // is atomic.
    SnmpRequestTree handlers = getHandlers(req,true,true,reqType);

    SnmpRequestTree.Handler h = null;
    SnmpMibNode meta = null;

    if (SNMP_ADAPTOR_LOGGER.isLoggable(Level.FINEST)) {
        SNMP_ADAPTOR_LOGGER.logp(Level.FINEST, SnmpMib.class.getName(),
                "check", "Processing handlers for CHECK... ");
    }

    // For each sub-request stored in the request-tree, invoke the
    // check() method.
    for (Enumeration eh=handlers.getHandlers();eh.hasMoreElements();) {
        h = (SnmpRequestTree.Handler) eh.nextElement();

        // Gets the Meta node. It can be either a Group Meta or a
        // Table Meta.
        //
        meta = handlers.getMetaNode(h);

        // Gets the depth of the Meta node in the OID tree
        final int depth = handlers.getOidDepth(h);

        for (Enumeration rqs=handlers.getSubRequests(h);
             rqs.hasMoreElements();) {

            // Invoke the check() operation
            meta.check((SnmpMibSubRequest)rqs.nextElement(),depth);
        }
    }

    // Optimization: we're going to pass the whole SnmpRequestTree
    // to the "set" method, so that we don't have to rebuild it there.
    //
    if (req instanceof SnmpMibRequestImpl) {
        ((SnmpMibRequestImpl)req).setRequestTree(handlers);
    }

}
 
开发者ID:openjdk,项目名称:jdk7-jdk,代码行数:54,代码来源:SnmpMib.java

示例7: addVarbind

import com.sun.jmx.snmp.SnmpDefinitions; //导入方法依赖的package包/类
public void addVarbind(SnmpVarBind varbind, SnmpOid entryoid,
                               boolean isnew, SnmpVarBind statusvb)
            throws SnmpStatusException {
            Vector<SnmpVarBind> v = null;
            SnmpVarBind rs = statusvb;

            if (entryoids == null) {
//              entryoids = new ArrayList();
//              entrylists = new ArrayList();
//              isentrynew = new ArrayList();
                v = new Vector<SnmpVarBind>();
//              entryoids.add(entryoid);
//              entrylists.add(v);
//              isentrynew.add(new Boolean(isnew));
                add(0,entryoid,v,isnew,rs);
            } else {
                // int pos = findOid(entryoids,entryoid);
                // int pos = findOid(entryoids,entrycount,entryoid);
                final int pos =
                    getInsertionPoint(entryoids,entrycount,entryoid);
                if (pos > -1 && pos < entrycount &&
                    entryoid.compareTo(entryoids[pos]) == 0) {
                    v  = entrylists[pos];
                    rs = rowstatus[pos];
                } else {
                    // if (pos == -1 || pos >= entryoids.size() ) {
                    // if (pos == -1 || pos >= entrycount ) {
                    // pos = getInsertionPoint(entryoids,entryoid);
                    // pos = getInsertionPoint(entryoids,entrycount,entryoid);
                    v = new Vector<SnmpVarBind>();
//                  entryoids.add(pos,entryoid);
//                  entrylists.add(pos,v);
//                  isentrynew.add(pos,new Boolean(isnew));
                    add(pos,entryoid,v,isnew,rs);
                }
//              } else v = (Vector) entrylists.get(pos);
                    // } else v = entrylists[pos];
                if (statusvb != null) {
                    if ((rs != null) && (rs != statusvb) &&
                        ((type == SnmpDefinitions.pduWalkRequest) ||
                         (type == SnmpDefinitions.pduSetRequestPdu))) {
                        throw new SnmpStatusException(
                              SnmpStatusException.snmpRspInconsistentValue);
                    }
                    rowstatus[pos] = statusvb;
                }
            }

            // We do not include the status variable in the varbind,
            // because we're going to set it separately...
            //
            if (statusvb != varbind)
                v.addElement(varbind);
        }
 
开发者ID:openjdk,项目名称:jdk7-jdk,代码行数:55,代码来源:SnmpRequestTree.java


注:本文中的com.sun.jmx.snmp.SnmpDefinitions.pduWalkRequest方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。