static EndpointConfig endpointConfigFromProperties(HazelcastProperties properties) {
        EndpointConfig endpointConfig = new EndpointConfig();
        endpointConfig.setSocketKeepAlive(properties.getBoolean(ClusterProperty.SOCKET_KEEP_ALIVE));
        endpointConfig.setSocketKeepIdleSeconds(properties.getInteger(ClusterProperty.SOCKET_KEEP_IDLE));
        endpointConfig.setSocketKeepIntervalSeconds(properties.getInteger(ClusterProperty.SOCKET_KEEP_INTERVAL));
        endpointConfig.setSocketKeepCount(properties.getInteger(ClusterProperty.SOCKET_KEEP_COUNT));
        endpointConfig.setSocketRcvBufferSizeKb(properties.getInteger(ClusterProperty.SOCKET_RECEIVE_BUFFER_SIZE));

        return endpointConfig;
    }
@Test
    public void testEndpointConfigFromClusterProperty() {
        Config config = new Config();
        config.setProperty(ClusterProperty.SOCKET_KEEP_ALIVE.getName(), "false");
        config.setProperty(ClusterProperty.SOCKET_KEEP_IDLE.getName(), "30");
        config.setProperty(ClusterProperty.SOCKET_KEEP_COUNT.getName(), "5");
        config.setProperty(ClusterProperty.SOCKET_KEEP_INTERVAL.getName(), "6");
        config.setProperty(ClusterProperty.SOCKET_RECEIVE_BUFFER_SIZE.getName(), "512");
        HazelcastProperties properties = new HazelcastProperties(config);
        EndpointConfig endpointConfig = DefaultAddressPicker.endpointConfigFromProperties(properties);
        assertFalse(endpointConfig.isSocketKeepAlive());
        assertEquals(30, endpointConfig.getSocketKeepIdleSeconds());
        assertEquals(5, endpointConfig.getSocketKeepCount());
        assertEquals(6, endpointConfig.getSocketKeepIntervalSeconds());
        assertEquals(512, endpointConfig.getSocketRcvBufferSizeKb());
    }