本文整理汇总了Java中org.onosproject.net.DefaultAnnotations.Builder类的典型用法代码示例。如果您正苦于以下问题:Java Builder类的具体用法?Java Builder怎么用?Java Builder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Builder类属于org.onosproject.net.DefaultAnnotations包,在下文中一共展示了Builder类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getAnnotations
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
private SparseAnnotations getAnnotations(PcepLspObject lspObj, StatefulIPv4LspIdentifiersTlv ipv4LspIdenTlv,
float bandwidth, LspType lspType, String costType) {
Builder builder = DefaultAnnotations.builder();
/*
* [RFC 5440] The absence of the METRIC object MUST be interpreted by the PCE as a path computation request
* for which no constraints need be applied to any of the metrics.
*/
if (costType != null) {
builder.set(COST_TYPE, costType);
}
SparseAnnotations annotations = builder
.set(BANDWIDTH, (new Float(bandwidth)).toString()).set(LSP_SIG_TYPE, lspType.name())
.set(PCC_TUNNEL_ID, String.valueOf(ipv4LspIdenTlv.getTunnelId()))
.set(PLSP_ID, String.valueOf(lspObj.getPlspId()))
.set(LOCAL_LSP_ID, String.valueOf(ipv4LspIdenTlv.getLspId()))
.set(DELEGATE, String.valueOf(lspObj.getDFlag()))
.build();
return annotations;
}
开发者ID:shlee89,项目名称:athena,代码行数:23,代码来源:PcepTunnelProvider.java
示例2: getPaths
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Override
public Set<Path> getPaths(Topology topology, DeviceId src, DeviceId dst, LinkWeight weight) {
DefaultTopologyVertex srcV = new DefaultTopologyVertex(src);
DefaultTopologyVertex dstV = new DefaultTopologyVertex(dst);
Set<TopologyVertex> vertices = graph.getVertexes();
if (!vertices.contains(srcV) || !vertices.contains(dstV)) {
// src or dst not part of the current graph
return ImmutableSet.of();
}
GraphPathSearch.Result<TopologyVertex, TopologyEdge> result = PathComputationTest.graphSearch()
.search(graph, srcV, dstV, weight, ALL_PATHS);
ImmutableSet.Builder<Path> builder = ImmutableSet.builder();
for (org.onlab.graph.Path<TopologyVertex, TopologyEdge> path : result.paths()) {
builder.add(PathComputationTest.networkPath(path));
}
return builder.build();
}
开发者ID:shlee89,项目名称:athena,代码行数:19,代码来源:PceManagerTest.java
示例3: otuPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates OTU port description based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param signalType OTU client signal type
* @param annotations key/value annotations map
*/
public static PortDescription otuPortDescription(PortNumber number,
boolean isEnabled,
OtuSignalType signalType,
SparseAnnotations annotations) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotations);
builder.set(SIGNAL_TYPE, signalType.toString());
long portSpeed = 0; // TODO specify appropriate value?
return new DefaultPortDescription(number,
isEnabled,
Port.Type.OTU,
portSpeed,
builder.build());
}
开发者ID:shlee89,项目名称:athena,代码行数:25,代码来源:OtuPortHelper.java
示例4: oduCltPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates ODU client port description based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param signalType ODU client signal type
* @param annotations key/value annotations map
*/
public static PortDescription oduCltPortDescription(PortNumber number,
boolean isEnabled,
CltSignalType signalType,
SparseAnnotations annotations) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotations);
builder.set(SIGNAL_TYPE, signalType.toString());
long portSpeed = signalType.bitRate();
return new DefaultPortDescription(number,
isEnabled,
Port.Type.ODUCLT,
portSpeed,
builder.build());
}
开发者ID:shlee89,项目名称:athena,代码行数:25,代码来源:OduCltPortHelper.java
示例5: omsPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates OMS port description based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param minFrequency minimum frequency
* @param maxFrequency maximum frequency
* @param grid grid spacing frequency
* @param annotations key/value annotations map
*/
public static PortDescription omsPortDescription(PortNumber number,
boolean isEnabled,
Frequency minFrequency,
Frequency maxFrequency,
Frequency grid,
SparseAnnotations annotations) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotations);
builder.set(MIN_FREQ_HZ, String.valueOf(minFrequency.asHz()));
builder.set(MAX_FREQ_HZ, String.valueOf(maxFrequency.asHz()));
builder.set(GRID_HZ, String.valueOf(grid.asHz()));
long portSpeed = 0;
return new DefaultPortDescription(number, isEnabled, Port.Type.OMS, portSpeed, builder.build());
}
开发者ID:shlee89,项目名称:athena,代码行数:28,代码来源:OmsPortHelper.java
示例6: ochPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates OCh port DefaultPortDescription based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param signalType ODU signal type
* @param isTunable tunable wavelength capability
* @param lambda OCh signal
* @param annotationsIn key/value annotations map
* @return OCh port DefaultPortDescription with OCh annotations
*/
public static PortDescription ochPortDescription(PortNumber number,
boolean isEnabled,
OduSignalType signalType,
boolean isTunable,
OchSignal lambda,
SparseAnnotations annotationsIn) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotationsIn);
builder.set(TUNABLE, String.valueOf(isTunable));
builder.set(LAMBDA, OchSignalCodec.encode(lambda).toString());
builder.set(SIGNAL_TYPE, signalType.toString());
DefaultAnnotations annotations = builder.build();
long portSpeed = 0; // FIXME assign appropriate value
return new DefaultPortDescription(number, isEnabled, Port.Type.OCH, portSpeed, annotations);
}
开发者ID:shlee89,项目名称:athena,代码行数:30,代码来源:OchPortHelper.java
示例7: getPaths
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Override
public Set<Path> getPaths(Topology topology, DeviceId src, DeviceId dst, LinkWeight weight) {
DefaultTopologyVertex srcV = new DefaultTopologyVertex(src);
DefaultTopologyVertex dstV = new DefaultTopologyVertex(dst);
Set<TopologyVertex> vertices = graph.getVertexes();
if (!vertices.contains(srcV) || !vertices.contains(dstV)) {
// src or dst not part of the current graph
return ImmutableSet.of();
}
GraphPathSearch.Result<TopologyVertex, TopologyEdge> result = PathComputationTest.graphSearch()
.search(graph, srcV, dstV, adapt(weight), ALL_PATHS);
ImmutableSet.Builder<Path> builder = ImmutableSet.builder();
for (org.onlab.graph.Path<TopologyVertex, TopologyEdge> path : result.paths()) {
builder.add(PathComputationTest.networkPath(path));
}
return builder.build();
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:19,代码来源:PceManagerTest.java
示例8: otuPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates OTU port description based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param signalType OTU client signal type
* @param annotations key/value annotations map
* @return port description
*/
public static PortDescription otuPortDescription(PortNumber number,
boolean isEnabled,
OtuSignalType signalType,
SparseAnnotations annotations) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotations);
builder.set(SIGNAL_TYPE, signalType.toString());
long portSpeed = 0; // TODO specify appropriate value?
return new DefaultPortDescription(number,
isEnabled,
Port.Type.OTU,
portSpeed,
builder.build());
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:26,代码来源:OtuPortHelper.java
示例9: oduCltPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates ODU client port description based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param signalType ODU client signal type
* @param annotations key/value annotations map
* @return port description
*/
public static PortDescription oduCltPortDescription(PortNumber number,
boolean isEnabled,
CltSignalType signalType,
SparseAnnotations annotations) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotations);
builder.set(SIGNAL_TYPE, signalType.toString());
long portSpeed = signalType.bitRate();
return new DefaultPortDescription(number,
isEnabled,
Port.Type.ODUCLT,
portSpeed,
builder.build());
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:26,代码来源:OduCltPortHelper.java
示例10: omsPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates OMS port description based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param minFrequency minimum frequency
* @param maxFrequency maximum frequency
* @param grid grid spacing frequency
* @param annotations key/value annotations map
* @return port description
*/
public static PortDescription omsPortDescription(PortNumber number,
boolean isEnabled,
Frequency minFrequency,
Frequency maxFrequency,
Frequency grid,
SparseAnnotations annotations) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotations);
builder.set(OpticalAnnotations.MIN_FREQ_HZ, String.valueOf(minFrequency.asHz()));
builder.set(OpticalAnnotations.MAX_FREQ_HZ, String.valueOf(maxFrequency.asHz()));
builder.set(OpticalAnnotations.GRID_HZ, String.valueOf(grid.asHz()));
long portSpeed = 0;
return new DefaultPortDescription(number, isEnabled, Port.Type.OMS, portSpeed, builder.build());
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:29,代码来源:OmsPortHelper.java
示例11: ochPortDescription
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates OCh port DefaultPortDescription based on the supplied information.
*
* @param number port number
* @param isEnabled port enabled state
* @param signalType ODU signal type
* @param isTunable tunable wavelength capability
* @param lambda OCh signal
* @param annotationsIn key/value annotations map
* @return OCh port DefaultPortDescription with OCh annotations
*/
public static PortDescription ochPortDescription(PortNumber number,
boolean isEnabled,
OduSignalType signalType,
boolean isTunable,
OchSignal lambda,
SparseAnnotations annotationsIn) {
Builder builder = DefaultAnnotations.builder();
builder.putAll(annotationsIn);
builder.set(TUNABLE, String.valueOf(isTunable));
builder.set(LAMBDA, OchSignalCodec.encode(lambda).toString());
builder.set(SIGNAL_TYPE, signalType.toString());
DefaultAnnotations annotations = builder.build();
long portSpeed = signalType.bitRate();
return new DefaultPortDescription(number, isEnabled, Port.Type.OCH, portSpeed, annotations);
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:30,代码来源:OchPortHelper.java
示例12: combine
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Override
public PortDescription combine(ConnectPoint cp, PortDescription descr) {
PortAnnotationConfig cfg = lookupConfig(cp);
if (cfg == null) {
return descr;
}
Map<String, String> annotations = cfg.annotations();
if (annotations.isEmpty()) {
return descr;
}
Builder builder = DefaultAnnotations.builder();
builder.putAll(descr.annotations());
builder.putAll(annotations);
return DefaultPortDescription.copyReplacingAnnotation(descr, builder.build());
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:18,代码来源:PortAnnotationOperator.java
示例13: combine
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Override
public DeviceDescription combine(DeviceId deviceId, DeviceDescription descr,
Optional<Config> prevConfig) {
DeviceAnnotationConfig cfg = lookupConfig(deviceId);
if (cfg == null) {
return descr;
}
Map<String, String> annotations = cfg.annotations();
Builder builder = DefaultAnnotations.builder();
builder.putAll(descr.annotations());
if (prevConfig.isPresent()) {
DeviceAnnotationConfig prevDeviceAnnotationConfig = (DeviceAnnotationConfig) prevConfig.get();
for (String key : prevDeviceAnnotationConfig.annotations().keySet()) {
if (!annotations.containsKey(key)) {
builder.remove(key);
}
}
}
builder.putAll(annotations);
return DefaultDeviceDescription.copyReplacingAnnotation(descr, builder.build());
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:24,代码来源:DeviceAnnotationOperator.java
示例14: buildTunnelStatistics
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Build a DefaultTunnelStatistics from a PcepTunnelStatistics.
*
* @param statistics statistics data from a PCEP tunnel
* @return TunnelStatistics
*/
private TunnelStatistics buildTunnelStatistics(PcepTunnelStatistics statistics) {
DefaultTunnelStatistics.Builder builder = new DefaultTunnelStatistics.Builder();
DefaultTunnelStatistics tunnelStatistics = builder.setBwUtilization(statistics.bandwidthUtilization())
.setPacketLossRatio(statistics.packetLossRate())
.setFlowDelay(statistics.flowDelay())
.setAlarms(statistics.alarms())
.build();
return tunnelStatistics;
}
开发者ID:shlee89,项目名称:athena,代码行数:16,代码来源:PcepTunnelProvider.java
示例15: deviceEventTest
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Test
public void deviceEventTest() {
// Make four router topology with SR-TE capabilities.
build4RouterTopo(true, false, true, true, 0);
// Add new L3 device
DefaultAnnotations.Builder builderDev5 = DefaultAnnotations.builder();
builderDev5.set(AnnotationKeys.TYPE, L3);
builderDev5.set(LSRID, "5.5.5.5");
Device dev5 = new MockDevice(DeviceId.deviceId("P005"), builderDev5.build());
deviceService.addDevice(dev5);
// Add capability
DeviceCapability device5Cap = netConfigRegistry.addConfig(DeviceId.deviceId("5.5.5.5"), DeviceCapability.class);
device5Cap.setLabelStackCap(true)
.setLocalLabelCap(false)
.setSrCap(true)
.apply();
// Get listener
DeviceListener listener = deviceService.getListener();
// Generate Remove events
deviceService.removeDevice(dev5);
DeviceEvent event = new DeviceEvent(DeviceEvent.Type.DEVICE_REMOVED, dev5);
listener.event(event);
assertThat(pceStore.getGlobalNodeLabel(dev5.id()), is(nullValue()));
}
开发者ID:shlee89,项目名称:athena,代码行数:31,代码来源:PceManagerTest.java
示例16: decode
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Override
public Annotations decode(ObjectNode json, CodecContext context) {
Builder builder = DefaultAnnotations.builder();
json.fields().forEachRemaining(e ->
builder.set(e.getKey(), e.getValue().asText()));
return builder.build();
}
开发者ID:shlee89,项目名称:athena,代码行数:10,代码来源:AnnotationsCodec.java
示例17: changePortState
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
@Override
public void changePortState(DeviceId deviceId, PortNumber portNumber,
boolean enable) {
final Dpid dpid = dpid(deviceId.uri());
OpenFlowSwitch sw = controller.getSwitch(dpid);
if (sw == null || !sw.isConnected()) {
LOG.error("Failed to change portState on device {}", deviceId);
return;
}
OFPortMod.Builder pmb = sw.factory().buildPortMod();
OFPort port = OFPort.of((int) portNumber.toLong());
pmb.setPortNo(port);
Set<OFPortConfig> portConfig = EnumSet.noneOf(OFPortConfig.class);
if (!enable) {
portConfig.add(OFPortConfig.PORT_DOWN);
}
pmb.setConfig(portConfig);
Set<OFPortConfig> portMask = EnumSet.noneOf(OFPortConfig.class);
portMask.add(OFPortConfig.PORT_DOWN);
pmb.setMask(portMask);
pmb.setAdvertise(0x0);
for (OFPortDesc pd : sw.getPorts()) {
if (pd.getPortNo().equals(port)) {
pmb.setHwAddr(pd.getHwAddr());
break;
}
}
sw.sendMsg(Collections.singletonList(pmb.build()));
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:30,代码来源:OpenFlowDeviceProvider.java
示例18: oms
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Ensures returned PortDescription is an OMS port.
*
* @param descr input PortDescription
* @return OMS PortDescription
*/
private PortDescription oms(PortDescription descr) {
// Hack until OFMessage -> PortDescription transformation
// becomes a Behaviour
if (descr.type() == Type.OMS) {
return descr;
}
Builder builder = DefaultAnnotations.builder();
builder.putAll(descr.annotations());
// set reasonable default when mandatory key is missing
if (Strings.isNullOrEmpty(descr.annotations().value(AK_MIN_FREQ_HZ))) {
builder.set(AK_MIN_FREQ_HZ, String.valueOf(Spectrum.O_BAND_MIN.asHz()));
}
if (Strings.isNullOrEmpty(descr.annotations().value(AK_MAX_FREQ_HZ))) {
builder.set(AK_MAX_FREQ_HZ, String.valueOf(Spectrum.O_BAND_MAX.asHz()));
}
if (Strings.isNullOrEmpty(descr.annotations().value(AK_GRID_HZ))) {
builder.set(AK_GRID_HZ, String.valueOf(Frequency.ofGHz(50).asHz()));
}
return DefaultPortDescription.builder(descr)
.type(Type.OMS)
.annotations(builder.build())
.build();
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:35,代码来源:OpenFlowDeviceProvider.java
示例19: makePortAnnotation
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
/**
* Creates an annotation builder for the port name if one is available.
*
* @param portName the port name
* @param portMac the port mac
* @param adminDown the port admin state
* @return annotation builder containing port admin state, port name
* and/or port MAC if any of the two is found
*/
private DefaultAnnotations.Builder makePortAnnotation(String portName, String portMac, boolean adminDown) {
DefaultAnnotations.Builder builder = DefaultAnnotations.builder();
String pName = Strings.emptyToNull(portName);
String pMac = Strings.emptyToNull(portMac);
if (pName != null) {
builder.set(AnnotationKeys.PORT_NAME, pName);
}
if (pMac != null) {
builder.set(AnnotationKeys.PORT_MAC, pMac);
}
String adminState = adminDown ? "disabled" : "enabled";
builder.set(AnnotationKeys.ADMIN_STATE, adminState);
return builder;
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:24,代码来源:OpenFlowDeviceProvider.java
示例20: getAnnotations
import org.onosproject.net.DefaultAnnotations.Builder; //导入依赖的package包/类
private SparseAnnotations getAnnotations(PcepLspObject lspObj, StatefulIPv4LspIdentifiersTlv ipv4LspIdenTlv,
String bandwidth, LspType lspType, String costType, boolean isPceInit) {
Builder builder = DefaultAnnotations.builder();
/*
* [RFC 5440] The absence of the METRIC object MUST be interpreted by the PCE as a path computation request
* for which no constraints need be applied to any of the metrics.
*/
if (costType != null) {
builder.set(COST_TYPE, costType);
}
if (isPceInit) {
builder.set(PCE_INIT, String.valueOf(isPceInit));
}
if (bandwidth != null) {
builder.set(BANDWIDTH, bandwidth);
}
SparseAnnotations annotations = builder
.set(LSP_SIG_TYPE, lspType.name())
.set(PCC_TUNNEL_ID, String.valueOf(ipv4LspIdenTlv.getTunnelId()))
.set(PLSP_ID, String.valueOf(lspObj.getPlspId()))
.set(LOCAL_LSP_ID, String.valueOf(ipv4LspIdenTlv.getLspId()))
.set(DELEGATE, String.valueOf(lspObj.getDFlag()))
.build();
return annotations;
}
开发者ID:opennetworkinglab,项目名称:onos,代码行数:29,代码来源:PcepTunnelProvider.java
注:本文中的org.onosproject.net.DefaultAnnotations.Builder类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论