Java 类org.projectfloodlight.openflow.protocol.OFMeterConfig 实例源码

项目:open-kilda    文件:MetersResource.java   
@Get("json")
@SuppressWarnings("unchecked")
public Map<Long, Object> getMeters() {
    Map<Long, Object> response = new HashMap<>();
    String switchId = (String) this.getRequestAttributes().get("switch_id");
    logger.debug("Get meters for switch: {}", switchId);
    ISwitchManager switchManager = (ISwitchManager) getContext().getAttributes()
            .get(ISwitchManager.class.getCanonicalName());

    try {
        OFMeterConfigStatsReply replay = switchManager.dumpMeters(DatapathId.of(switchId));
        logger.debug("Meters from switch {} received: {}", switchId, replay);

        if (replay != null) {
            for (OFMeterConfig entry : replay.getEntries()) {
                response.put(entry.getMeterId(), entry);
            }
        }
    } catch (IllegalArgumentException exception) {
        String messageString = "No such switch";
        logger.error("{}: {}", messageString, switchId, exception);
        MessageError responseMessage = new MessageError(DEFAULT_CORRELATION_ID, System.currentTimeMillis(),
                ErrorType.PARAMETERS_INVALID.toString(), messageString, exception.getMessage());
        response.putAll(MAPPER.convertValue(responseMessage, Map.class));
    }
    return response;
}
项目:fresco_floodlight    文件:StatsReplySerializer.java   
/***
 * Serializes Meter Config Reply
 * @author Naveen 
 * @param meterConfigReplies
 * @param jGen
 * @throws IOException
 * @throws JsonProcessingException
 */
public static void serializeMeterConfigReply(List<OFMeterConfigStatsReply> meterConfigReplies, JsonGenerator jGen) throws IOException, JsonProcessingException{
    OFMeterConfigStatsReply meterConfigReply = meterConfigReplies.get(0);
    jGen.writeStringField("version", meterConfigReply.getVersion().toString()); //return the enum name
    jGen.writeFieldName("meterConfig");
    jGen.writeStartArray();
    for (OFMeterConfig config : meterConfigReply.getEntries()) {
        jGen.writeStartObject();
        jGen.writeNumberField("meterId", config.getMeterId());
        jGen.writeNumberField("flags", config.getFlags());
        jGen.writeFieldName("meterBands");
        jGen.writeStartArray();
        for (OFMeterBand band : config.getEntries()) {
            jGen.writeStartObject();
            short type = (short)band.getType();
            jGen.writeNumberField("bandType",type);

            switch (type) {
            case OFMeterBandTypeSerializerVer13.DROP_VAL:
                OFMeterBandDrop bandDrop = (OFMeterBandDrop) band;
                jGen.writeNumberField("rate", bandDrop.getRate());
                jGen.writeNumberField("burstSize", bandDrop.getBurstSize());
                break;

            case OFMeterBandTypeSerializerVer13.DSCP_REMARK_VAL:
                OFMeterBandDscpRemark bandDscp = (OFMeterBandDscpRemark) band;
                jGen.writeNumberField("rate", bandDscp.getRate());
                jGen.writeNumberField("burstSize", bandDscp.getBurstSize());
                jGen.writeNumberField("precLevel", bandDscp.getPrecLevel());
                break;

            case OFMeterBandTypeSerializerVer13.EXPERIMENTER_VAL:
                OFMeterBandExperimenter bandExp = (OFMeterBandExperimenter) band;
                jGen.writeNumberField("rate", bandExp.getRate());
                jGen.writeNumberField("burstSize", bandExp.getBurstSize());
                jGen.writeNumberField("experimenter", bandExp.getExperimenter());
                break;

            default:
                // shouldn't ever get here
                break;                  
            }//end of Switch Case

            jGen.writeEndObject();
        }//end of for loop
        jGen.writeEndArray();
        jGen.writeEndObject();
    }//end of for loop
    jGen.writeEndArray();
}
项目:SDN-Multicast    文件:StatsReplySerializer.java   
/***
 * Serializes Meter Config Reply
 * @author Naveen 
 * @param meterConfigReplies
 * @param jGen
 * @throws IOException
 * @throws JsonProcessingException
 */
public static void serializeMeterConfigReply(List<OFMeterConfigStatsReply> meterConfigReplies, JsonGenerator jGen) throws IOException, JsonProcessingException{
    OFMeterConfigStatsReply meterConfigReply = meterConfigReplies.get(0);
    jGen.writeStringField("version", meterConfigReply.getVersion().toString()); //return the enum name
    jGen.writeFieldName("meterConfig");
    jGen.writeStartArray();
    for (OFMeterConfig config : meterConfigReply.getEntries()) {
        jGen.writeStartObject();
        jGen.writeNumberField("meterId", config.getMeterId());
        jGen.writeNumberField("flags", config.getFlags());
        jGen.writeFieldName("meterBands");
        jGen.writeStartArray();
        for (OFMeterBand band : config.getEntries()) {
            jGen.writeStartObject();
            short type = (short)band.getType();
            jGen.writeNumberField("bandType",type);

            switch (type) {
            case OFMeterBandTypeSerializerVer13.DROP_VAL:
                OFMeterBandDrop bandDrop = (OFMeterBandDrop) band;
                jGen.writeNumberField("rate", bandDrop.getRate());
                jGen.writeNumberField("burstSize", bandDrop.getBurstSize());
                break;

            case OFMeterBandTypeSerializerVer13.DSCP_REMARK_VAL:
                OFMeterBandDscpRemark bandDscp = (OFMeterBandDscpRemark) band;
                jGen.writeNumberField("rate", bandDscp.getRate());
                jGen.writeNumberField("burstSize", bandDscp.getBurstSize());
                jGen.writeNumberField("precLevel", bandDscp.getPrecLevel());
                break;

            case OFMeterBandTypeSerializerVer13.EXPERIMENTER_VAL:
                OFMeterBandExperimenter bandExp = (OFMeterBandExperimenter) band;
                jGen.writeNumberField("rate", bandExp.getRate());
                jGen.writeNumberField("burstSize", bandExp.getBurstSize());
                jGen.writeNumberField("experimenter", bandExp.getExperimenter());
                break;

            default:
                // shouldn't ever get here
                break;                  
            }//end of Switch Case

            jGen.writeEndObject();
        }//end of for loop
        jGen.writeEndArray();
        jGen.writeEndObject();
    }//end of for loop
    jGen.writeEndArray();
}
项目:arscheduler    文件:StatsReplySerializer.java   
/***
 * Serializes Meter Config Reply
 * @author Naveen 
 * @param meterConfigReplies
 * @param jGen
 * @throws IOException
 * @throws JsonProcessingException
 */
public static void serializeMeterConfigReply(List<OFMeterConfigStatsReply> meterConfigReplies, JsonGenerator jGen) throws IOException, JsonProcessingException{
    OFMeterConfigStatsReply meterConfigReply = meterConfigReplies.get(0);
    jGen.writeStringField("version", meterConfigReply.getVersion().toString()); //return the enum name
    jGen.writeFieldName("meterConfig");
    jGen.writeStartArray();
    for (OFMeterConfig config : meterConfigReply.getEntries()) {
        jGen.writeStartObject();
        jGen.writeNumberField("meterId", config.getMeterId());
        jGen.writeNumberField("flags", config.getFlags());
        jGen.writeFieldName("meterBands");
        jGen.writeStartArray();
        for (OFMeterBand band : config.getEntries()) {
            jGen.writeStartObject();
            short type = (short)band.getType();
            jGen.writeNumberField("bandType",type);

            switch (type) {
            case OFMeterBandTypeSerializerVer13.DROP_VAL:
                OFMeterBandDrop bandDrop = (OFMeterBandDrop) band;
                jGen.writeNumberField("rate", bandDrop.getRate());
                jGen.writeNumberField("burstSize", bandDrop.getBurstSize());
                break;

            case OFMeterBandTypeSerializerVer13.DSCP_REMARK_VAL:
                OFMeterBandDscpRemark bandDscp = (OFMeterBandDscpRemark) band;
                jGen.writeNumberField("rate", bandDscp.getRate());
                jGen.writeNumberField("burstSize", bandDscp.getBurstSize());
                jGen.writeNumberField("precLevel", bandDscp.getPrecLevel());
                break;

            case OFMeterBandTypeSerializerVer13.EXPERIMENTER_VAL:
                OFMeterBandExperimenter bandExp = (OFMeterBandExperimenter) band;
                jGen.writeNumberField("rate", bandExp.getRate());
                jGen.writeNumberField("burstSize", bandExp.getBurstSize());
                jGen.writeNumberField("experimenter", bandExp.getExperimenter());
                break;

            default:
                // shouldn't ever get here
                break;                  
            }//end of Switch Case

            jGen.writeEndObject();
        }//end of for loop
        jGen.writeEndArray();
        jGen.writeEndObject();
    }//end of for loop
    jGen.writeEndArray();
}
项目:floodlight1.2-delay    文件:StatsReplySerializer.java   
/***
 * Serializes Meter Config Reply
 * @author Naveen 
 * @param meterConfigReplies
 * @param jGen
 * @throws IOException
 * @throws JsonProcessingException
 */
public static void serializeMeterConfigReply(List<OFMeterConfigStatsReply> meterConfigReplies, JsonGenerator jGen) throws IOException, JsonProcessingException{
    OFMeterConfigStatsReply meterConfigReply = meterConfigReplies.get(0);
    jGen.writeStringField("version", meterConfigReply.getVersion().toString()); //return the enum name
    jGen.writeFieldName("meterConfig");
    jGen.writeStartArray();
    for (OFMeterConfig config : meterConfigReply.getEntries()) {
        jGen.writeStartObject();
        jGen.writeNumberField("meterId", config.getMeterId());
        jGen.writeNumberField("flags", config.getFlags());
        jGen.writeFieldName("meterBands");
        jGen.writeStartArray();
        for (OFMeterBand band : config.getEntries()) {
            jGen.writeStartObject();
            short type = (short)band.getType();
            jGen.writeNumberField("bandType",type);

            switch (type) {
            case OFMeterBandTypeSerializerVer13.DROP_VAL:
                OFMeterBandDrop bandDrop = (OFMeterBandDrop) band;
                jGen.writeNumberField("rate", bandDrop.getRate());
                jGen.writeNumberField("burstSize", bandDrop.getBurstSize());
                break;

            case OFMeterBandTypeSerializerVer13.DSCP_REMARK_VAL:
                OFMeterBandDscpRemark bandDscp = (OFMeterBandDscpRemark) band;
                jGen.writeNumberField("rate", bandDscp.getRate());
                jGen.writeNumberField("burstSize", bandDscp.getBurstSize());
                jGen.writeNumberField("precLevel", bandDscp.getPrecLevel());
                break;

            case OFMeterBandTypeSerializerVer13.EXPERIMENTER_VAL:
                OFMeterBandExperimenter bandExp = (OFMeterBandExperimenter) band;
                jGen.writeNumberField("rate", bandExp.getRate());
                jGen.writeNumberField("burstSize", bandExp.getBurstSize());
                jGen.writeNumberField("experimenter", bandExp.getExperimenter());
                break;

            default:
                // shouldn't ever get here
                break;                  
            }//end of Switch Case

            jGen.writeEndObject();
        }//end of for loop
        jGen.writeEndArray();
        jGen.writeEndObject();
    }//end of for loop
    jGen.writeEndArray();
}
项目:floodlight-hardware    文件:StatsReplySerializer.java   
/***
 * Serializes Meter Config Reply
 * @author Naveen
 * @param meterConfigReplies
 * @param jGen
 * @throws IOException
 * @throws JsonProcessingException
 */
public static void serializeMeterConfigReply(List<OFMeterConfigStatsReply> meterConfigReplies, JsonGenerator jGen) throws IOException, JsonProcessingException{
    OFMeterConfigStatsReply meterConfigReply = meterConfigReplies.get(0);
    jGen.writeStringField("version", meterConfigReply.getVersion().toString()); //return the enum name
    jGen.writeFieldName("meterConfig");
    jGen.writeStartArray();
    for (OFMeterConfig config : meterConfigReply.getEntries()) {
        jGen.writeStartObject();
        jGen.writeNumberField("meterId", config.getMeterId());
        jGen.writeNumberField("flags", config.getFlags());
        jGen.writeFieldName("meterBands");
        jGen.writeStartArray();
        for (OFMeterBand band : config.getEntries()) {
            jGen.writeStartObject();
            short type = (short)band.getType();
            jGen.writeNumberField("bandType",type);

            switch (type) {
            case OFMeterBandTypeSerializerVer13.DROP_VAL:
                OFMeterBandDrop bandDrop = (OFMeterBandDrop) band;
                jGen.writeNumberField("rate", bandDrop.getRate());
                jGen.writeNumberField("burstSize", bandDrop.getBurstSize());
                break;

            case OFMeterBandTypeSerializerVer13.DSCP_REMARK_VAL:
                OFMeterBandDscpRemark bandDscp = (OFMeterBandDscpRemark) band;
                jGen.writeNumberField("rate", bandDscp.getRate());
                jGen.writeNumberField("burstSize", bandDscp.getBurstSize());
                jGen.writeNumberField("precLevel", bandDscp.getPrecLevel());
                break;

            case OFMeterBandTypeSerializerVer13.EXPERIMENTER_VAL:
                OFMeterBandExperimenter bandExp = (OFMeterBandExperimenter) band;
                jGen.writeNumberField("rate", bandExp.getRate());
                jGen.writeNumberField("burstSize", bandExp.getBurstSize());
                jGen.writeNumberField("experimenter", bandExp.getExperimenter());
                break;

            default:
                // shouldn't ever get here
                break;
            }//end of Switch Case

            jGen.writeEndObject();
        }//end of for loop
        jGen.writeEndArray();
        jGen.writeEndObject();
    }//end of for loop
    jGen.writeEndArray();
}
项目:ACAMPController    文件:StatsReplySerializer.java   
/***
 * Serializes Meter Config Reply
 * @author Naveen 
 * @param meterConfigReplies
 * @param jGen
 * @throws IOException
 * @throws JsonProcessingException
 */
public static void serializeMeterConfigReply(List<OFMeterConfigStatsReply> meterConfigReplies, JsonGenerator jGen) throws IOException, JsonProcessingException{
    OFMeterConfigStatsReply meterConfigReply = meterConfigReplies.get(0);
    jGen.writeStringField("version", meterConfigReply.getVersion().toString()); //return the enum name
    jGen.writeFieldName("meterConfig");
    jGen.writeStartArray();
    for (OFMeterConfig config : meterConfigReply.getEntries()) {
        jGen.writeStartObject();
        jGen.writeNumberField("meterId", config.getMeterId());
        jGen.writeNumberField("flags", config.getFlags());
        jGen.writeFieldName("meterBands");
        jGen.writeStartArray();
        for (OFMeterBand band : config.getEntries()) {
            jGen.writeStartObject();
            short type = (short)band.getType();
            jGen.writeNumberField("bandType",type);

            switch (type) {
            case OFMeterBandTypeSerializerVer13.DROP_VAL:
                OFMeterBandDrop bandDrop = (OFMeterBandDrop) band;
                jGen.writeNumberField("rate", bandDrop.getRate());
                jGen.writeNumberField("burstSize", bandDrop.getBurstSize());
                break;

            case OFMeterBandTypeSerializerVer13.DSCP_REMARK_VAL:
                OFMeterBandDscpRemark bandDscp = (OFMeterBandDscpRemark) band;
                jGen.writeNumberField("rate", bandDscp.getRate());
                jGen.writeNumberField("burstSize", bandDscp.getBurstSize());
                jGen.writeNumberField("precLevel", bandDscp.getPrecLevel());
                break;

            case OFMeterBandTypeSerializerVer13.EXPERIMENTER_VAL:
                OFMeterBandExperimenter bandExp = (OFMeterBandExperimenter) band;
                jGen.writeNumberField("rate", bandExp.getRate());
                jGen.writeNumberField("burstSize", bandExp.getBurstSize());
                jGen.writeNumberField("experimenter", bandExp.getExperimenter());
                break;

            default:
                // shouldn't ever get here
                break;                  
            }//end of Switch Case

            jGen.writeEndObject();
        }//end of for loop
        jGen.writeEndArray();
        jGen.writeEndObject();
    }//end of for loop
    jGen.writeEndArray();
}