本文整理汇总了Java中org.onosproject.incubator.net.tunnel.TunnelProvider类的典型用法代码示例。如果您正苦于以下问题:Java TunnelProvider类的具体用法?Java TunnelProvider怎么用?Java TunnelProvider使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
TunnelProvider类属于org.onosproject.incubator.net.tunnel包,在下文中一共展示了TunnelProvider类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: borrowTunnel
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public Collection<Tunnel> borrowTunnel(ApplicationId consumerId,
TunnelEndPoint src, TunnelEndPoint dst,
Annotations... annotations) {
Collection<Tunnel> tunnels = store.borrowTunnel(consumerId, src,
dst, annotations);
if (tunnels == null || tunnels.size() == 0) {
Tunnel tunnel = new DefaultTunnel(null, src, dst, null, null, null,
null, null, annotations);
Set<ProviderId> ids = getProviders();
for (ProviderId providerId : ids) {
TunnelProvider provider = getProvider(providerId);
provider.setupTunnel(tunnel, null);
}
}
return tunnels;
}
示例2: downTunnel
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public boolean downTunnel(ApplicationId producerId, TunnelId tunnelId) {
// TODO: producerId to check if really required to consider while deleting the tunnel.
checkNotNull(tunnelId, TUNNNEL_ID_NULL);
Tunnel tunnel = store.queryTunnel(tunnelId);
if (tunnel != null) {
TunnelId updtTunnelId = store.createOrUpdateTunnel(tunnel, State.INACTIVE);
if (updtTunnelId != null) {
Set<ProviderId> ids = getProviders();
for (ProviderId providerId : ids) {
TunnelProvider provider = getProvider(providerId);
provider.releaseTunnel(tunnel);
}
}
return true;
}
return false;
}
示例3: borrowTunnel
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public Collection<Tunnel> borrowTunnel(ApplicationId consumerId,
TunnelEndPoint src, TunnelEndPoint dst,
Annotations... annotations) {
Collection<Tunnel> tunnels = store.borrowTunnel(consumerId, src,
dst, annotations);
if (tunnels == null || tunnels.isEmpty()) {
Tunnel tunnel = new DefaultTunnel(null, src, dst, null, null, null,
null, null, annotations);
Set<ProviderId> ids = getProviders();
for (ProviderId providerId : ids) {
TunnelProvider provider = getProvider(providerId);
provider.setupTunnel(tunnel, null);
}
}
return tunnels;
}
示例4: setupTunnel
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public TunnelId setupTunnel(ApplicationId producerId, ElementId srcElementId, Tunnel tunnel, Path path) {
// TODO: producerId to check if really required to consider while setup the tunnel.
checkNotNull(tunnel, TUNNNEL_NULL);
TunnelId tunnelId = store.createOrUpdateTunnel(tunnel, State.INIT);
if (tunnelId != null) {
Set<ProviderId> ids = getProviders();
for (ProviderId providerId : ids) {
TunnelProvider provider = getProvider(providerId);
provider.setupTunnel(srcElementId, tunnel, path);
}
}
return tunnelId;
}
示例5: execute
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
protected void execute() {
TunnelProvider service = get(TunnelProvider.class);
TunnelId id = TunnelId.valueOf(tunnelId);
SparseAnnotations annotations = DefaultAnnotations
.builder()
.set("bandwidth", bandwidth)
.build();
TunnelDescription tunnel = new DefaultTunnelDescription(id, null,
null,
null, null,
null,
null, null, annotations);
service.tunnelUpdated(tunnel);
}
示例6: setupTunnel
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public TunnelId setupTunnel(ApplicationId producerId, ElementId srcElementId, Tunnel tunnel, Path path) {
// TODO: producerId to check if really required to consider while setup the tunnel.
checkNotNull(tunnel, TUNNNEL_NULL);
TunnelId tunnelId = store.createOrUpdateTunnel(tunnel, State.INIT);
if (tunnelId != null) {
Set<ProviderId> ids = getProviders();
Tunnel newT = queryTunnel(tunnelId);
for (ProviderId providerId : ids) {
TunnelProvider provider = getProvider(providerId);
provider.setupTunnel(srcElementId, newT, path);
}
}
return tunnelId;
}
示例7: register
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public TunnelProviderService register(TunnelProvider provider) {
providerService = new TestTunnelProviderService(provider);
return providerService;
}
示例8: TestTunnelProviderService
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
protected TestTunnelProviderService(TunnelProvider provider) {
super(provider);
}
示例9: register
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public TunnelProviderService register(TunnelProvider provider) {
this.provider = provider;
return new TestProviderService();
}
示例10: unregister
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public void unregister(TunnelProvider provider) {
}
示例11: provider
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public TunnelProvider provider() {
return null;
}
示例12: createProviderService
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
protected TunnelProviderService createProviderService(TunnelProvider provider) {
return new InternalTunnelProviderService(provider);
}
示例13: InternalTunnelProviderService
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
protected InternalTunnelProviderService(TunnelProvider provider) {
super(provider);
}
示例14: unregister
import org.onosproject.incubator.net.tunnel.TunnelProvider; //导入依赖的package包/类
@Override
public void unregister(TunnelProvider provider) {
}