@Override
    public void migrateOrg(ObjectNode node) {
        ArrayNode clients = (ArrayNode) node.get("Clients"); //$NON-NLS-1$
        if (clients != null && clients.size() > 0) {
            for (JsonNode clientNode : clients) {
                ObjectNode client = (ObjectNode) clientNode;
                ArrayNode versions = (ArrayNode) client.get("Versions"); //$NON-NLS-1$
                if (versions != null && versions.size() > 0) {
                    for (JsonNode versionNode : versions) {
                        ObjectNode version = (ObjectNode) versionNode;
                        
                        ObjectNode clientVersionBean = (ObjectNode) version.get("ClientVersionBean"); //$NON-NLS-1$
                        clientVersionBean.put("apikey", keyGenerator.generate()); //$NON-NLS-1$
                        
                        ArrayNode contracts = (ArrayNode) version.get("Contracts"); //$NON-NLS-1$
                        if (contracts != null && contracts.size() > 0) {
                            for (JsonNode contractNode : contracts) {
                                ObjectNode contract = (ObjectNode) contractNode;
                                contract.remove("apikey"); //$NON-NLS-1$
                            }
                        }
                    }
                }
            }
        }
        
    }
@see io.apiman.manager.api.migrator.IVersionMigrator#migrateOrg(com.fasterxml.jackson.databind.node.ObjectNode)
manager/api/migrator/src/main/java/io/apiman/manager/api/migrator/vms/Version122FinalMigrator.java