blob: a221f1d3803ad7bc8186633a5817cc689bc17450 [file] [log] [blame]
J. Duke319a3b92007-12-01 00:00:00 +00001/*
2 * Copyright 1997-2000 Sun Microsystems, Inc. All Rights Reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Sun designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Sun in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
22 * CA 95054 USA or visit www.sun.com if you need additional information or
23 * have any questions.
24 */
25
26package java.beans;
27
28import java.applet.Applet;
29
30import java.beans.beancontext.BeanContext;
31
32/**
33 * <p>
34 * This interface is designed to work in collusion with java.beans.Beans.instantiate.
35 * The interafce is intended to provide mechanism to allow the proper
36 * initialization of JavaBeans that are also Applets, during their
37 * instantiation by java.beans.Beans.instantiate().
38 * </p>
39 *
40 * @see java.beans.Beans#instantiate
41 *
42 * @since 1.2
43 *
44 */
45
46
47public interface AppletInitializer {
48
49 /**
50 * <p>
51 * If passed to the appropriate variant of java.beans.Beans.instantiate
52 * this method will be called in order to associate the newly instantiated
53 * Applet (JavaBean) with its AppletContext, AppletStub, and Container.
54 * </p>
55 * <p>
56 * Conformant implementations shall:
57 * <ol>
58 * <li> Associate the newly instantiated Applet with the appropriate
59 * AppletContext.
60 *
61 * <li> Instantiate an AppletStub() and associate that AppletStub with
62 * the Applet via an invocation of setStub().
63 *
64 * <li> If BeanContext parameter is null, then it shall associate the
65 * Applet with its appropriate Container by adding that Applet to its
66 * Container via an invocation of add(). If the BeanContext parameter is
67 * non-null, then it is the responsibility of the BeanContext to associate
68 * the Applet with its Container during the subsequent invocation of its
69 * addChildren() method.
70 * </ol>
71 * </p>
72 *
73 * @param newAppletBean The newly instantiated JavaBean
74 * @param bCtxt The BeanContext intended for this Applet, or
75 * null.
76 */
77
78 void initialize(Applet newAppletBean, BeanContext bCtxt);
79
80 /**
81 * <p>
82 * Activate, and/or mark Applet active. Implementors of this interface
83 * shall mark this Applet as active, and optionally invoke its start()
84 * method.
85 * </p>
86 *
87 * @param newApplet The newly instantiated JavaBean
88 */
89
90 void activate(Applet newApplet);
91}