001    // Copyright 2004, 2005 The Apache Software Foundation
002    //
003    // Licensed under the Apache License, Version 2.0 (the "License");
004    // you may not use this file except in compliance with the License.
005    // You may obtain a copy of the License at
006    //
007    //     http://www.apache.org/licenses/LICENSE-2.0
008    //
009    // Unless required by applicable law or agreed to in writing, software
010    // distributed under the License is distributed on an "AS IS" BASIS,
011    // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
012    // See the License for the specific language governing permissions and
013    // limitations under the License.
014    
015    package org.apache.hivemind.events;
016    
017    import java.util.EventListener;
018    
019    import org.apache.hivemind.internal.RegistryInfrastructure;
020    
021    /**
022     * Lifecycle interface that may be implemented by objects
023     * that need to know when the {@link org.apache.hivemind.Registry}
024     * has been fully initialized and that need a reference to the {@link RegistryInfrastructure} interface.
025     * Typically, this is implemented by core service implementations.
026     * 
027     * @author Achim Huegen
028     */
029    public interface RegistryInitializationListener extends EventListener
030    {
031            /**
032             * Invoked when the registry has been initialized.
033         * All runtime data (Modules, ServicePoints) etc. is assembled.
034         * The hivemind.Startup service point has not been launched before.   
035             */
036            public void registryInitialized(RegistryInfrastructure registry);
037    }