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


Java SubnetConfig类代码示例

本文整理汇总了Java中org.opendaylight.controller.switchmanager.SubnetConfig的典型用法代码示例。如果您正苦于以下问题:Java SubnetConfig类的具体用法?Java SubnetConfig怎么用?Java SubnetConfig使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: saveSwitchConfigInternal

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
public Status saveSwitchConfigInternal() {
    Status retS = null, retP = null;
    ObjectWriter objWriter = new ObjectWriter();

    retS = objWriter.write(new ConcurrentHashMap<String, SubnetConfig>(
            subnetsConfigList), subnetFileName);
    retP = objWriter.write(new ConcurrentHashMap<SpanConfig, SpanConfig>(
            spanConfigList), spanFileName);
    retS = objWriter.write(new ConcurrentHashMap<String, SwitchConfig>(
            nodeConfigList), switchConfigFileName);

    if (retS.equals(retP)) {
        if (retS.isSuccess()) {
            return retS;
        } else {
            return new Status(StatusCode.INTERNALERROR, "Save failed");
        }
    } else {
        return new Status(StatusCode.INTERNALERROR, "Partial save failure");
    }
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:22,代码来源:SwitchManagerImpl.java

示例2: testSwitchManagerAddRemoveSubnet

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@Test
public void testSwitchManagerAddRemoveSubnet() {
    SwitchManagerImpl switchmgr = new SwitchManagerImpl();
    switchmgr.startUp();

    ArrayList<String> portList = new ArrayList<String>();
    portList.add("1/1");
    portList.add("1/2");
    portList.add("1/3");

    SubnetConfig subnet = new SubnetConfig("subnet", "10.0.0.254/16",
            portList);
    // System.out.println("*" + switchmgr.addSubnet(subnet) + "*");
    Status addResult = (switchmgr.addSubnet(subnet));
    Assert.assertTrue(addResult.isSuccess());

    Status removeResult = (switchmgr.removeSubnet(subnet.getName()));
    Assert.assertTrue(removeResult.isSuccess());

    SubnetConfig subnetConfigResult = switchmgr.getSubnetConfig(subnet
            .getName());
    Assert.assertTrue(subnetConfigResult == null);

}
 
开发者ID:lbchen,项目名称:ODL,代码行数:25,代码来源:SwitchManagerImplTest.java

示例3: addNodePorts

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
/**
 *
 * Add ports to a subnet
 *
 * @param containerName
 *            Name of the Container
 * @param name
 *            Name of the SubnetConfig to be modified
 * @param subnetConfigData
 *            the {@link SubnetConfig} structure in JSON passed as a POST
 *            parameter
 * @return If the operation is successful or not
 */
@Path("/{containerName}/{subnetName}/add")
@POST
@Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
@StatusCodes({
    @ResponseCode(code = 202, condition = "Operation successful"),
    @ResponseCode(code = 400, condition = "Invalid request"),
    @ResponseCode(code = 404, condition = "The containerName or subnetName is not found"),
    @ResponseCode(code = 500, condition = "Internal server error") })
public Response addNodePorts(
        @PathParam("containerName") String containerName,
        @PathParam("subnetName") String name,
        @TypeHint(SubnetConfig.class) JAXBElement<SubnetConfig> subnetConfigData) {

    SubnetConfig subnetConf = subnetConfigData.getValue();
    return addOrDeletePorts(containerName, name, subnetConf, "add");
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:30,代码来源:SubnetsNorthboundJAXRS.java

示例4: deleteNodePorts

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
/**
 *
 * Delete ports from a subnet
 *
 * @param containerName
 *            Name of the Container
 * @param name
 *            Name of the SubnetConfig to be modified
 * @param subnetConfigData
 *            the {@link SubnetConfig} structure in JSON passed as a POST
 *            parameter
 * @return If the operation is successful or not
 */
@Path("/{containerName}/{subnetName}/delete")
@POST
@Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
@StatusCodes({
    @ResponseCode(code = 202, condition = "Operation successful"),
    @ResponseCode(code = 400, condition = "Invalid request"),
    @ResponseCode(code = 404, condition = "The containerName or subnetName is not found"),
    @ResponseCode(code = 500, condition = "Internal server error") })
public Response deleteNodePorts(
        @PathParam("containerName") String containerName,
        @PathParam("subnetName") String name,
        @TypeHint(SubnetConfig.class) JAXBElement<SubnetConfig> subnetConfigData) {

    SubnetConfig subnetConf = subnetConfigData.getValue();
    return addOrDeletePorts(containerName, name, subnetConf, "delete");
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:30,代码来源:SubnetsNorthboundJAXRS.java

示例5: getSubnetGateways

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@RequestMapping(value = "/subnets", method = RequestMethod.GET)
@ResponseBody
public DevicesJsonBean getSubnetGateways(HttpServletRequest request,
        @RequestParam(required = false) String container) {
    Gson gson = new Gson();
    List<Map<String, String>> subnets = new ArrayList<Map<String, String>>();
    String containerName = (container == null) ? GlobalConstants.DEFAULT
            .toString() : container;

    // Derive the privilege this user has on the current container
    String userName = request.getUserPrincipal().getName();
    Privilege privilege = DaylightWebUtil.getContainerPrivilege(
            userName, containerName, this);

    if (privilege != Privilege.NONE) {
        ISwitchManager switchManager = (ISwitchManager) ServiceHelper
                .getInstance(ISwitchManager.class, containerName, this);
        if (switchManager != null) {
            for (SubnetConfig conf : switchManager.getSubnetsConfigList()) {
                Map<String, String> subnet = new HashMap<String, String>();
                subnet.put("name", conf.getName());
                subnet.put("subnet", conf.getSubnet());
                subnet.put("json", gson.toJson(conf));
                subnets.add(subnet);
            }
        }
    }
    DevicesJsonBean result = new DevicesJsonBean();
    result.setPrivilege(privilege);
    result.setColumnNames(SubnetConfig.getGuiFieldsNames());
    result.setNodeData(subnets);
    return result;
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:34,代码来源:Devices.java

示例6: addSubnetGateways

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@RequestMapping(value = "/subnetGateway/add", method = RequestMethod.GET)
@ResponseBody
public StatusJsonBean addSubnetGateways(
        @RequestParam("gatewayName") String gatewayName,
        @RequestParam("gatewayIPAddress") String gatewayIPAddress,
        HttpServletRequest request,
        @RequestParam(required = false) String container) {
    String containerName = (container == null) ? GlobalConstants.DEFAULT
            .toString() : container;

    // Authorization check
    String userName = request.getUserPrincipal().getName();
    if (DaylightWebUtil.getContainerPrivilege(userName, containerName, this) != Privilege.WRITE) {
        return unauthorizedMessage();
    }

    StatusJsonBean resultBean = new StatusJsonBean();
    try {
        ISwitchManager switchManager = (ISwitchManager) ServiceHelper
                .getInstance(ISwitchManager.class, containerName, this);
        SubnetConfig cfgObject = new SubnetConfig(gatewayName,
                gatewayIPAddress, new ArrayList<String>());
        Status result = switchManager.addSubnet(cfgObject);
        if (result.isSuccess()) {
            resultBean.setStatus(true);
            resultBean.setMessage("Added gateway address successfully");
        } else {
            resultBean.setStatus(false);
            resultBean.setMessage(result.getDescription());
        }
    } catch (Exception e) {
        resultBean.setStatus(false);
        resultBean.setMessage(e.getMessage());
    }
    return resultBean;
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:37,代码来源:Devices.java

示例7: nonClusterObjectCreate

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
private void nonClusterObjectCreate() {
    subnetsConfigList = new ConcurrentHashMap<String, SubnetConfig>();
    spanConfigList = new ConcurrentHashMap<SpanConfig, SpanConfig>();
    nodeConfigList = new ConcurrentHashMap<String, SwitchConfig>();
    subnets = new ConcurrentHashMap<InetAddress, Subnet>();
    configSaveEvent = new ConcurrentHashMap<Long, String>();
    nodeProps = new ConcurrentHashMap<Node, Map<String, Property>>();
    nodeConnectorProps = new ConcurrentHashMap<NodeConnector, Map<String, Property>>();
    nodeConnectorNames = new ConcurrentHashMap<Node, Map<String, NodeConnector>>();
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:11,代码来源:SwitchManagerImpl.java

示例8: updateConfig

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
private Status updateConfig(SubnetConfig conf, boolean add) {
    if (add) {
        if(subnetsConfigList.putIfAbsent(conf.getName(), conf) != null) {
            String msg = "Cluster conflict: Subnet with name " + conf.getName() + "already exists.";
            return new Status(StatusCode.CONFLICT, msg);
        }
    } else {
        subnetsConfigList.remove(conf.getName());
    }
    return new Status(StatusCode.SUCCESS);
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:12,代码来源:SwitchManagerImpl.java

示例9: semanticCheck

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
private Status semanticCheck(SubnetConfig conf) {
    Subnet newSubnet = new Subnet(conf);
    Set<InetAddress> IPs = subnets.keySet();
    if (IPs == null) {
        return new Status(StatusCode.SUCCESS);
    }
    for (InetAddress i : IPs) {
        Subnet existingSubnet = subnets.get(i);
        if ((existingSubnet != null)
                && !existingSubnet.isMutualExclusive(newSubnet)) {
            return new Status(StatusCode.CONFLICT);
        }
    }
    return new Status(StatusCode.SUCCESS);
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:16,代码来源:SwitchManagerImpl.java

示例10: removeSubnet

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@Override
public Status removeSubnet(String name) {
    SubnetConfig conf = subnetsConfigList.get(name);
    if (conf == null) {
        return new Status(StatusCode.SUCCESS, "Subnet not present");
    }
    return this.addRemoveSubnet(conf, false);
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:9,代码来源:SwitchManagerImpl.java

示例11: loadSubnetConfiguration

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@SuppressWarnings("unchecked")
private void loadSubnetConfiguration() {
    ObjectReader objReader = new ObjectReader();
    ConcurrentMap<String, SubnetConfig> confList = (ConcurrentMap<String, SubnetConfig>) objReader
            .read(this, subnetFileName);

    if (confList == null) {
        return;
    }

    for (SubnetConfig conf : confList.values()) {
        addSubnet(conf);
    }
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:15,代码来源:SwitchManagerImpl.java

示例12: testSubnetConfigs

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@Test
public void testSubnetConfigs() {
    SubnetConfigs sc1 = new SubnetConfigs(null);
    Assert.assertNull(sc1.getSubnetConfig());

    ArrayList<SubnetConfig> list = new ArrayList<SubnetConfig>();
    SubnetConfig s1 = new SubnetConfig();
    list.add(s1);
    sc1.setSubnetConfig(list);
    Assert.assertTrue(sc1.getSubnetConfig().equals(list));

    sc1.setSubnetConfig(null);
    Assert.assertNull(sc1.getSubnetConfig());
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:15,代码来源:SubnetsNorthboundTest.java

示例13: retrieveCaches

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@SuppressWarnings({ "unchecked", "deprecation" })
private void retrieveCaches() {
    if (this.clusterContainerService == null) {
        log.info("un-initialized clusterContainerService, can't create cache");
        return;
    }

    subnetsConfigList = (ConcurrentMap<String, SubnetConfig>) clusterContainerService
            .getCache("switchmanager.subnetsConfigList");
    if (subnetsConfigList == null) {
        log.error("\nFailed to get cache for subnetsConfigList");
    }

    spanConfigList = (ConcurrentMap<SpanConfig, SpanConfig>) clusterContainerService
            .getCache("switchmanager.spanConfigList");
    if (spanConfigList == null) {
        log.error("\nFailed to get cache for spanConfigList");
    }

    nodeConfigList = (ConcurrentMap<String, SwitchConfig>) clusterContainerService
            .getCache("switchmanager.nodeConfigList");
    if (nodeConfigList == null) {
        log.error("\nFailed to get cache for nodeConfigList");
    }

    subnets = (ConcurrentMap<InetAddress, Subnet>) clusterContainerService
            .getCache("switchmanager.subnets");
    if (subnets == null) {
        log.error("\nFailed to get cache for subnets");
    }

    configSaveEvent = (ConcurrentMap<Long, String>) clusterContainerService
            .getCache("switchmanager.configSaveEvent");
    if (configSaveEvent == null) {
        log.error("\nFailed to get cache for configSaveEvent");
    }

    nodeProps = (ConcurrentMap<Node, Map<String, Property>>) clusterContainerService
            .getCache("switchmanager.nodeProps");
    if (nodeProps == null) {
        log.error("\nFailed to get cache for nodeProps");
    }

    nodeConnectorProps = (ConcurrentMap<NodeConnector, Map<String, Property>>) clusterContainerService
            .getCache("switchmanager.nodeConnectorProps");
    if (nodeConnectorProps == null) {
        log.error("\nFailed to get cache for nodeConnectorProps");
    }

    nodeConnectorNames = (ConcurrentMap<Node, Map<String, NodeConnector>>) clusterContainerService
            .getCache("switchmanager.nodeConnectorNames");
    if (nodeConnectorNames == null) {
        log.error("\nFailed to get cache for nodeConnectorNames");
    }
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:56,代码来源:SwitchManagerImpl.java

示例14: getSubnetsConfigList

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@Override
public List<SubnetConfig> getSubnetsConfigList() {
    return new ArrayList<SubnetConfig>(subnetsConfigList.values());
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:5,代码来源:SwitchManagerImpl.java

示例15: getSubnetConfig

import org.opendaylight.controller.switchmanager.SubnetConfig; //导入依赖的package包/类
@Override
public SubnetConfig getSubnetConfig(String subnet) {
    return subnetsConfigList.get(subnet);
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:5,代码来源:SwitchManagerImpl.java


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