This is an automated email from the ASF dual-hosted git repository. udo pushed a commit to branch feature/GEODE-8067 in repository https://gitbox.apache.org/repos/asf/geode.git
commit a3f9e9c550bdb385283353aee6e474f23a923020 Author: Patrick Johnson <pjohn...@pivotal.io> AuthorDate: Wed May 6 10:36:31 2020 -0700 GEODE-8037 - Create BootstrappingService interface. (#5046) --- .../bootstrapping/BootstrappingService.java | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/geode-common-services/src/main/java/org/apache/geode/services/bootstrapping/BootstrappingService.java b/geode-common-services/src/main/java/org/apache/geode/services/bootstrapping/BootstrappingService.java new file mode 100644 index 0000000..d23acc7 --- /dev/null +++ b/geode-common-services/src/main/java/org/apache/geode/services/bootstrapping/BootstrappingService.java @@ -0,0 +1,44 @@ +/* + * 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.geode.services.bootstrapping; + +import java.util.Properties; + +import org.apache.geode.annotations.Experimental; + +/** + * Service responsible for bootstrapping the environment and Geode components. + * + * @since Geode 1.13.0 + */ +@Experimental +public interface BootstrappingService { + + /** + * Start and initialize Geode. + * + * @param properties system properties to use when bootstrapping the environment. + * @throws Exception - thrown if unable to bootstrap system. + */ + void init(Properties properties) throws Exception; + + /** + * Shuts down the environment and previously bootstrapped Geode components. + * + * @throws Exception - thrown if unable to shutdown. + */ + void shutdown() throws Exception; +}