Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
Apache ZooKeeper 3.7.0 Server Source Code
Apache ZooKeeper is an open-source server which enables highly reliable distributed coordination.
Apache ZooKeeper Server Source Code files are provided in the source packge (apache-zookeeper-3.7.0.tar.gz). You can download it at Apache ZooKeeper Website.
You can also browse Apache ZooKeeper Server Source Code below:
✍: FYIcenter.com
⏎ org/apache/zookeeper/server/controller/ControllerServerConfig.java
/** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.zookeeper.server.controller; import java.io.File; import java.io.IOException; import java.net.InetAddress; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.util.HashMap; import java.util.Map; import org.apache.zookeeper.server.ServerConfig; import org.apache.zookeeper.server.quorum.QuorumPeer; import org.apache.zookeeper.server.quorum.QuorumPeerConfig; import org.apache.zookeeper.server.quorum.flexible.QuorumMaj; /** * Config for the ControllerService. Responsible for providing the minimum set of configurations * that's required to spin up a single member ensemble. */ public class ControllerServerConfig extends QuorumPeerConfig { public static final String CONTROLLER_PORT_KEY = "zookeeper.controllerPort"; public static final String CLIENT_PORT_KEY = "zookeeper.clientPortAddress"; private InetSocketAddress controllerAddress; public InetSocketAddress getControllerAddress() { return controllerAddress; } /** * Instantiate a new config via a zk config file. * @param configFile path to the configuration file * @throws ConfigException */ public ControllerServerConfig(String configFile) throws ConfigException { parse(configFile); } /** * Instantiate a config object with required parameters. * @param hostAddress The address to bind to (likely loopback or localhost) * @param controllerPort Port the controller will listen for incoming control command sent from CommandClient. * @param zkServerPort Port the ZooKeeper server will listen on. * @param dataDirPath Path to the data directory that ZooKeeperServer uses. */ public ControllerServerConfig(InetAddress hostAddress, int controllerPort, int zkServerPort, String dataDirPath) { controllerAddress = new InetSocketAddress(hostAddress, controllerPort); clientPortAddress = new InetSocketAddress(hostAddress, zkServerPort); dataDir = new File(dataDirPath); dataLogDir = dataDir; serverId = 0; } /** * Instantiate a config object with required parameters. * @param controllerPort Port the controller will listen for incoming control command sent from CommandClient. * @param zkServerPort Port the ZooKeeper server will listen on. * @param dataDirPath Path to the data directory that ZooKeeperServer uses. */ public ControllerServerConfig(int controllerPort, int zkServerPort, String dataDirPath) { this(InetAddress.getLoopbackAddress(), controllerPort, zkServerPort, dataDirPath); } public ServerConfig getZooKeeperServerConfig() { ServerConfig serverConfig = new ServerConfig(); serverConfig.readFrom(this); return serverConfig; } @Override public void parse(String configFile) throws ConfigException { super.parse(configFile); for (String key : System.getProperties().stringPropertyNames()) { if (CONTROLLER_PORT_KEY.equalsIgnoreCase(key)) { setControllerAddress(System.getProperty(key)); } if (CLIENT_PORT_KEY.equals(key)) { setClientAddress(System.getProperty(key)); } } if (controllerAddress == null) { throw new ConfigException("Missing required parameter " + CONTROLLER_PORT_KEY); } if (clientPortAddress == null) { throw new ConfigException("Missing required parameter " + CLIENT_PORT_KEY); } } private void setControllerAddress(String port) { try { controllerAddress = new InetSocketAddress(InetAddress.getLoopbackAddress(), Integer.parseInt(port)); } catch (NumberFormatException ex) { throw new IllegalArgumentException("Invalid port", ex); } } private void setClientAddress(String port) { try { clientPortAddress = new InetSocketAddress(InetAddress.getLoopbackAddress(), Integer.parseInt(port)); } catch (NumberFormatException ex) { throw new IllegalArgumentException("Invalid port", ex); } } /** * Ensure config is acceptable by filling in default values for any missing quorum configuration * (specifically in the case of a single machine ensemble) * * @throws IOException */ public void ensureComplete() throws IOException { if (this.quorumVerifier != null && this.quorumVerifier.getAllMembers().size() > 0) { return; } // QuorumPeer requires a QuorumVerifier. // We will use majority strategy with only this host in the quorum. // We need to provide 2 more ports: one for elections and one for quorum communications. // We will also mark this host as the leader. ServerSocket randomSocket1 = new ServerSocket(0); int quorumPort = randomSocket1.getLocalPort(); ServerSocket randomSocket2 = new ServerSocket(0); int electionPort = randomSocket2.getLocalPort(); randomSocket1.close(); randomSocket2.close(); QuorumPeer.QuorumServer selfAsPeer = new QuorumPeer.QuorumServer( 0, new InetSocketAddress(quorumPort), new InetSocketAddress(electionPort), this.clientPortAddress ); Map<Long, QuorumPeer.QuorumServer> peers = new HashMap<>(); peers.put(selfAsPeer.id, selfAsPeer); this.quorumVerifier = new QuorumMaj(peers); } }
⏎ org/apache/zookeeper/server/controller/ControllerServerConfig.java
Or download all of them as a single archive file:
File name: zookeeper-server-3.7.0-fyi.zip File size: 871011 bytes Release date: 2021-05-17 Download
⇒ Apache ZooKeeper 3.7.0 Jute Source Code
⇐ Download Apache ZooKeeper 3.7.0 Source Package
2022-11-16, 13200👍, 0💬
Popular Posts:
Snappy-Java is a Java port of the "snappy", a fast C++ compresser/decompresser developed by Google. ...
Where to find answers to frequently asked questions on Downloading and Using JDK (Java Development K...
What Is javaws.jar in JRE (Java Runtime Environment) 8? javaws.jar in JRE (Java Runtime Environment)...
How to download and install ojdbc7.jar for Oracle 12c R1? ojdbc8.jar for Oracle 12c R1 is a Java 7 a...
JDK 11 jdk.aot.jmod is the JMOD file for JDK 11 Ahead-of-Time (AOT) Compiler module. JDK 11 AOT Comp...