@Override
    public void createNode(OpenstackNode osNode) {
        checkNotNull(osNode, ERR_NULL_NODE);

        OpenstackNode updatedNode;

        if (osNode.intgBridge() == null && osNode.type() != CONTROLLER) {
            String deviceIdStr = genDpid(deviceIdCounter.incrementAndGet());
            checkNotNull(deviceIdStr, ERR_NULL_DEVICE_ID);
            updatedNode = osNode.updateIntbridge(DeviceId.deviceId(deviceIdStr));
            checkArgument(!hasIntgBridge(updatedNode.intgBridge(), updatedNode.hostname()),
                                NOT_DUPLICATED_MSG, updatedNode.intgBridge());
        } else {
            updatedNode = osNode;
            checkArgument(!hasIntgBridge(updatedNode.intgBridge(), updatedNode.hostname()),
                                NOT_DUPLICATED_MSG, updatedNode.intgBridge());
        }

        osNodeStore.createNode(updatedNode);

        log.info(String.format(MSG_NODE, osNode.hostname(), MSG_CREATED));
    }
@Test(expected = IllegalArgumentException.class)
    public void testCreateNodeWithDuplicateIntgBridge() {
        target.createNode(COMPUTE_1);
        target.createNode(COMPUTE_1_DUP_INT);
    }