@Override public void run(Coordinator coordinator) throws IOException { Domain domain = coordinator.getDomain(domainName); Map<String, Object> options = getOptions(domainName, domain); this.result = FileOpsUtil.getDomainBuilderRoot(options); } }
@Override protected void action(HttpServletRequest req, HttpServletResponse resp) throws IOException { String domainName = req.getParameter("name"); int numParts = Integer.parseInt(req.getParameter("numParts")); String storageEngineFactoryName = req.getParameter("storageEngineFactorySelect"); if (storageEngineFactoryName.equals("__other__")) { storageEngineFactoryName = req.getParameter("storageEngineFactoryName"); } String storageEngineOptions = req.getParameter("storageEngineOptions"); final String requiredHostFlags = req.getParameter("requiredHostFlags"); String partitionerName = req.getParameter("partitionerSelect"); if (partitionerName.equals("__other__")) { partitionerName = req.getParameter("partitionerOther"); } DomainController.this.coordinator.addDomain(domainName, numParts, storageEngineFactoryName, storageEngineOptions, partitionerName, Hosts.splitHostFlags(requiredHostFlags)); redirect("/domains.jsp", resp); } });
private void doCreate(HttpServletRequest req, HttpServletResponse response) throws IOException { coordinator.addDomainGroup(req.getParameter("name")); response.sendRedirect("/domain_groups.jsp"); }
private void doDeleteDomain(HttpServletRequest req, HttpServletResponse resp) throws IOException { String domainName = req.getParameter("name"); final Domain domain = coordinator.getDomain(domainName); if (!isInUse(domain)) { coordinator.deleteDomain(domain.getName()); } resp.sendRedirect("/domains.jsp"); }
protected void doUpdateDomainVersions(HttpServletRequest req, HttpServletResponse resp) throws IOException { String dgName = URLEnc.decode(req.getParameter("name")); DomainGroup dg = coordinator.getDomainGroup(dgName); Map<Domain, Integer> domainVersions = new HashMap<Domain, Integer>(); for (Domain domain : coordinator.getDomains()) { String version = req.getParameter(domain.getName() + "_version"); if (version == null) { continue; } domainVersions.put(domain, Integer.parseInt(version)); } dg.setDomainVersions(domainVersions); resp.sendRedirect("/domain_group.jsp?n=" + dgName); } }
private void doUpdateDomain(HttpServletRequest req, HttpServletResponse resp) throws IOException { final String domainName = req.getParameter("name"); final String partitionerClassName = req.getParameter("partitionerClassName"); final String requiredHostFlags = req.getParameter("requiredHostFlags"); final String storageEngineFactoryClassName = req.getParameter("storageEngineFactoryClassName"); final String storageEngineOptions = req.getParameter("storageEngineOptions"); final Domain domain = coordinator.getDomain(domainName); if (domain == null) { throw new IOException("Could not get Domain '" + domainName + "' from Configurator."); } else { coordinator.updateDomain(domainName, domain.getNumParts(), storageEngineFactoryClassName, storageEngineOptions, partitionerClassName, Hosts.splitHostFlags(requiredHostFlags)); } resp.sendRedirect("/domains.jsp"); } }
LOG.info("Ring Group Conductor for ring group " + ringGroupName + " starting."); try { ringGroup = coordinator.getRingGroup(ringGroupName); LOG.info("Creating ring group: " + ringGroupName); DomainGroup domainGroup = coordinator.getDomainGroup(ringGroupName); if (domainGroup == null) { LOG.info("Creating domain group: " + ringGroupName); domainGroup = coordinator.addDomainGroup(ringGroupName); ringGroup = coordinator.addRingGroup(ringGroupName, domainGroup.getName());
private void doAddHost(HttpServletRequest req, HttpServletResponse resp) throws IOException { String rgName = req.getParameter("rgName"); int ringNum = Integer.parseInt(req.getParameter("ringNum")); String hostname = req.getParameter("hostname").trim(); int portNum = Integer.parseInt(req.getParameter("port")); String flagsStr = req.getParameter("hostFlags"); coordinator.getRingGroup(rgName).getRing(ringNum).addHost( new PartitionServerAddress(hostname, portNum), Hosts.splitHostFlags(flagsStr)); resp.sendRedirect("/ring.jsp?g=" + rgName + "&n=" + ringNum); }
protected void synchronizeDomains(Coordinator coordinator, RingGroup ringGroup) throws IOException { Domain domain = coordinator.getDomain(configuredDomain.getName()); LOG.info("Creating configured but missing domain: " + configuredDomain.getName()); coordinator.addDomain( configuredDomain.getName(), configuredParts, coordinator.updateDomain( domain.getName(), configuredParts,
final Domain d0 = coordinator.addDomain(DOMAIN_0, 32, Echo.Factory.class.getName(), d0Conf, Murmur64Partitioner.class.getName(), Collections.<String>emptyList()); DomainVersion ver = d0.openNewVersion(null); ver.close(); ver = d0.openNewVersion(null); final Domain d1 = coordinator.addDomain(DOMAIN_1, 32, Echo.Factory.class.getName(), "---", Murmur64Partitioner.class.getName(), Collections.<String>emptyList()); ver = d1.openNewVersion(null); dumpZk(); DomainGroup g1 = coordinator.addDomainGroup(DOMAIN_GROUP_0); Map<Domain, Integer> g1Versions = new HashMap<Domain, Integer>(); g1Versions.put(d0, 1); DomainGroup g2 = coordinator.addDomainGroup(DOMAIN_GROUP_1); Map<Domain, Integer> g2Versions = new HashMap<Domain, Integer>(); g2Versions.put(d1, 1); g2.setDomainVersions(g2Versions); RingGroup rg0 = coordinator.addRingGroup(RING_GROUP_0, g1.getName()); Ring r1 = rg0.addRing(1); r1.addHost(addy("alpha-1-1"), Collections.<String>emptyList()); RingGroup rg1 = coordinator.addRingGroup(RING_GROUP_1, g1.getName()); r1 = rg1.addRing(1); r1.addHost(addy("beta-1-1"), Collections.<String>emptyList()); RingGroup rg2 = coordinator.addRingGroup(RING_GROUP_2, g2.getName()); r1 = rg2.addRing(1); r1.addHost(addy("gamma-1-1"), Collections.<String>emptyList());
private void doDeleteOrUndeletePartition(HttpServletRequest req, HttpServletResponse resp, boolean deletable) throws IOException { RingGroup rg = coordinator.getRingGroup(req.getParameter("g")); Ring r = rg.getRing(Integer.parseInt(req.getParameter("n"))); Host h = r.getHostByAddress(PartitionServerAddress.parse(URLEnc.decode(req.getParameter("h")))); HostDomain hd = h.getHostDomain(coordinator.getDomain(req.getParameter("d"))); HostDomainPartition hdp = hd.getPartitionByNumber(Integer.parseInt(req.getParameter("p"))); hdp.setDeletable(deletable); redirectBack(resp, rg, r, h); }
private void closeCoordinatorOpportunistically() throws IOException { if (coordinatorToCloseOpportunistically != null) { coordinatorToCloseOpportunistically.close(); } }
private void doCreate(HttpServletRequest req, HttpServletResponse resp) throws IOException { coordinator.addRingGroup(req.getParameter("rgName"), req.getParameter("dgName")); // could log the rg... resp.sendRedirect("/ring_groups.jsp"); }
private void addDomainGroupDeployStatusToResponse(Map<String, Object> requestData, Map<String, Object> responseData) throws IOException { DomainGroup domainGroup = coordinator.getDomainGroup((String) requestData.get(Params.DEPLOY_STATUS_FOR_DOMAIN_GROUP)); if (domainGroup != null) { responseData.put(domainGroup.getName(), apiHelper.getDomainGroupDeployStatus(domainGroup).asMap()); } }
protected void doDeleteRing(HttpServletRequest req, HttpServletResponse resp) throws IOException { RingGroup ringGroup; String encodedRingGroupName = req.getParameter("g"); ringGroup = coordinator.getRingGroup(URLEnc.decode(encodedRingGroupName)); if (ringGroup == null) { throw new IOException("couldn't find any ring group called " + URLEnc.decode(encodedRingGroupName)); } ringGroup.removeRing(Integer.parseInt(req.getParameter("n"))); resp.sendRedirect("/ring_group.jsp?name=" + encodedRingGroupName); }
@Override public void close() throws IOException { LOG.info("Deleting local temporary directory " + localTmpOutput.getAbsolutePath()); FileUtils.deleteDirectory(localTmpOutput); if (coordinator != null) { coordinator.close(); } } }
private void addDomainGroupDataToResponse(Map<String, Object> requestData, Map<String, Object> responseData) throws IOException { DomainGroup domainGroup = coordinator.getDomainGroup((String) requestData.get(Params.DOMAIN_GROUP)); if (domainGroup != null) { HankApiHelper.DomainGroupData data = apiHelper.getDomainGroupData(domainGroup); responseData.put(domainGroup.getName(), data.asMap()); } }
@Override public void run(Coordinator coordinator) throws IOException { Domain domain = coordinator.getDomain(domainName); Map<String, Object> options = getOptions(domainName, domain); this.result = FileOpsUtil.getPartitionServerRoot(options); }
private void doCommandAll(HttpServletRequest req, HttpServletResponse resp) throws IOException { String rgName = req.getParameter("rgName"); int ringNum = Integer.parseInt(req.getParameter("ringNum")); HostCommand command = HostCommand.valueOf(req.getParameter("command")); Rings.commandAll(coordinator.getRingGroup(rgName).getRing(ringNum), command); resp.sendRedirect("/ring.jsp?g=" + rgName + "&n=" + ringNum); } }
public static void run(CoordinatorConfigurator configurator, RunnableWithCoordinator runnableWithCoordinator) throws IOException { Coordinator coordinator = createCoordinator(configurator); try { runnableWithCoordinator.run(coordinator); } finally { coordinator.close(); } } }