/* * The contents of this file are subject to the Mozilla Public License Version 1.1 * (the "License"); you may not use this file except in compliance with the License. * You may obtain a copy of the License at . * * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT * WARRANTY OF ANY KIND, either express or implied. See the License for the specific * language governing rights and limitations under the License. * * The Original Code is the Venice Web Communities System. * * The Initial Developer of the Original Code is Eric J. Bowersox , * for Silverwrist Design Studios. Portions created by Eric J. Bowersox are * Copyright (C) 2002-03 Eric J. Bowersox/Silverwrist Design Studios. All Rights Reserved. * * Contributor(s): */ package com.silverwrist.dynamo.iface; import org.w3c.dom.Element; import com.silverwrist.dynamo.except.ConfigException; /** * An interface implemented by Dynamo components, allowing them to be initialized with information from the * master configuration file. This interface also provides the "initialization services," allowing components * to register various resources for use by the server, or to hook various pieces of the server framework. *

The method of this interface is commonly called when the component is initialized. It may be implemented * on the component either via direct implementation or via a service accessible via its * {@link com.silverwrist.dynamo.iface.ServiceProvider ServiceProvider} implementation. * * @author Eric J. Bowersox <erbo@silcom.com> * @version X */ public interface ComponentInitialize { /** * Initialize the component. * * @param config_root Pointer to the section of the Dynamo XML configuration file that configures this * particular component. This is to be considered "read-only" by the component. * @param services An implementation of {@link com.silverwrist.dynamo.iface.ServiceProvider ServiceProvider} * which provides initialization services to the component. This will include an implementation * of {@link com.silverwrist.dynamo.iface.ObjectProvider ObjectProvider} which may be used to * get information about other objects previously initialized by the application. * @exception com.silverwrist.dynamo.except.ConfigException If an error is encountered in the component * configuration. */ public void initialize(Element config_root, ServiceProvider services) throws ConfigException; } // end interface ComponentInitialize