模块  java.desktop

Class BeanContextSupport

    • 字段详细信息

      • locale

        protected Locale locale
        此BeanContext的当前语言环境。
      • okToUseGui

        protected boolean okToUseGui
        boolean指示此实例现在是否可以呈现GUI。
      • designTime

        protected boolean designTime
        boolean指示该对象当前是否处于设计时模式。
    • 构造方法详细信息

      • BeanContextSupport

        public BeanContextSupport​(BeanContext peer,
                                  Locale lcle,
                                  boolean dTime,
                                  boolean visible)
        构造BeanContextSupport实例
        参数
        peer -对等 BeanContext我们提供了一个实现,或 null如果此对象是它自己的同
        lcle - 此BeanContext的当前Locale。 如果lclenull ,则将默认区域设置分配给BeanContext实例。
        dTime -初始状态, true如果在设计模式中, false如果运行时。
        visible - 初始可见性。
        另请参见:
        Locale.getDefault()Locale.setDefault(java.util.Locale)
      • BeanContextSupport

        public BeanContextSupport​(BeanContext peer,
                                  Locale lcle,
                                  boolean dtime)
        使用指定的区域设置和设计模式创建实例。
        参数
        peer - 对等 BeanContext我们正在提供实现,或 null如果此对象是其自己的对等端
        lcle - 该lcle的当前位置和当前BeanContext 如果lclenullnull将默认语言环境分配给BeanContext实例。
        dtime -初始状态, true如果在设计模式中, false如果运行时。
        另请参见:
        Locale.getDefault()Locale.setDefault(java.util.Locale)
      • BeanContextSupport

        public BeanContextSupport​(BeanContext peer,
                                  Locale lcle)
        使用指定的区域设置创建实例
        参数
        peer - 我们正在为其提供实现的对等BeanContext,如果此对象是其自己的对等方, null
        lcle - 此BeanContext的当前BeanContext 如果lclenullnull将默认语言环境分配给BeanContext实例。
        另请参见:
        Locale.getDefault()Locale.setDefault(java.util.Locale)
      • BeanContextSupport

        public BeanContextSupport​(BeanContext peer)
        使用默认语言环境创建实例
        参数
        peer - 对等 BeanContext我们正在提供实现,或 null如果此对象是其自己的对等方
      • BeanContextSupport

        public BeanContextSupport()
        创建一个不是另一个对象委托的实例
    • 方法详细信息

      • getBeanContextPeer

        public BeanContext getBeanContextPeer()
        获取此对象为其提供实现的 BeanContext的实例。
        结果
        BeanContext实例
      • instantiateChild

        public Object instantiateChild​(String beanName)
                                throws IOException,
                                       ClassNotFoundException

        instantiateChild方法是BeanContext中的一个便利钩子,用于简化将嵌套的Bean实例化为BeanContext

        beanName参数的语义由java.beans.Beans.instantiate定义。

        Specified by:
        instantiateChild在接口 BeanContext
        参数
        beanName - 要在此BeanContext中实例化的Bean的名称
        结果
        新的对象
        异常
        IOException - 如果反序列化bean时出现I / O错误
        ClassNotFoundException - 如果找不到beanName参数标识的类
      • size

        public int size()
        获取当前嵌套在此BeanContext中的子节点数。
        Specified by:
        size在界面 Collection
        结果
        儿童人数
      • isEmpty

        public boolean isEmpty()
        报告此BeanContext是否为空。 BeanContext包含零嵌套子项时,它被视为空。
        Specified by:
        isEmpty in界面 Collection
        结果
        如果没有孩子
      • contains

        public boolean contains​(Object o)
        确定指定的对象当前是否为此 BeanContext的子 BeanContext
        Specified by:
        contains在界面 Collection
        参数
        o - 有问题的对象
        结果
        如果这个对象是孩子
      • containsKey

        public boolean containsKey​(Object o)
        确定指定的对象当前是否为此 BeanContext的子 BeanContext
        参数
        o - 有问题的对象
        结果
        如果这个对象是孩子
      • iterator

        public Iterator<Object> iterator()
        获取当前嵌套在此 BeanContext中的所有JavaBean或 BeanContext实例。
        Specified by:
        iterator in界面 Collection
        Specified by:
        iterator in界面 Iterable
        结果
        一个 Iterator嵌套的孩子
      • toArray

        public Object[] toArray()
        获取当前嵌套在此BeanContext中的所有JavaBean或 BeanContext实例。
        Specified by:
        toArray in interface Collection
        结果
        一个数组,其 runtime component typeObject ,包含此集合中的所有元素
      • toArray

        public Object[] toArray​(Object[] arry)
        获取一个数组,其中包含此 BeanContext中与 BeanContext中包含的类型匹配的所有子项。
        Specified by:
        toArray ,接口 Collection
        参数
        arry - 感兴趣的对象类型数组。
        结果
        一系列的孩子
      • createBCSChild

        protected BeanContextSupport.BCSChild createBCSChild​(Object targetChild,
                                                             Object peer)

        子类可以重写此方法以插入自己的Child子类,而不必覆盖add()或其他将子项添加到集合的Collection方法。

        参数
        targetChild - 代表孩子创建孩子
        peer - 如果tragetChild和peer通过BeanContextProxy的实现相关,则为peer
        结果
        Child的子类型特定子类,不覆盖集合方法
      • add

        public boolean add​(Object targetChild)
        在这个BeanContext添加/嵌套一个孩子。

        作为java.beans.Beans.instantiate()的副作用调用。 如果子对象无法添加,则此方法将抛出IllegalStateException。

        Specified by:
        add在界面 Collection
        参数
        targetChild - 要在此 BeanContext嵌套的子对象
        结果
        如果已成功添加子项,则为true。
        另请参见:
        validatePendingAdd(java.lang.Object)
      • remove

        public boolean remove​(Object targetChild)
        从此BeanContext中删除子项。 如果子对象不是用于添加,则此方法将抛出IllegalStateException。
        Specified by:
        remove在界面 Collection
        参数
        targetChild - 要删除的子对象
        结果
        true如果由于此调用而删除了某个元素
        另请参见:
        validatePendingRemove(java.lang.Object)
      • remove

        protected boolean remove​(Object targetChild,
                                 boolean callChildSetBC)
        删除由意外 setBeanContextremove()调用引起的内部删除。
        参数
        targetChild - 要删除的JavaBean,BeanContext或Object
        callChildSetBC - 用于表示应通知孩子它不再嵌套在此 BeanContext
        结果
        在被移除之前是否存在
      • containsAll

        public boolean containsAll​(Collection c)
        测试以查看指定的 Collection中的所有对象是否为此 BeanContextBeanContext
        Specified by:
        containsAll in interface Collection
        参数
        c - 指定的 Collection
        结果
        true如果集合中的所有对象都是此 BeanContext子对象, BeanContext false,否则为false。
        另请参见:
        Collection.contains(Object)
      • addAll

        public boolean addAll​(Collection c)
        添加到子集(不支持)实现的集合必须在层次结构锁和“children”受保护字段上同步
        Specified by:
        addAll接口 Collection
        参数
        c - 包含要添加到此集合的元素的集合
        结果
        此实现无条件抛出 UnsupportedOperationException
        异常
        UnsupportedOperationException - 由此实现无条件抛出
        另请参见:
        Collection.add(Object)
      • clear

        public void clear()
        清除子(不支持)实现必须在层次结构锁和“children”受保护字段上同步
        Specified by:
        clear接口 Collection
        异常
        UnsupportedOperationException - 由此实现无条件抛出
      • getResourceAsStream

        public InputStream getResourceAsStream​(String name,
                                               BeanContextChild bcc)
        从界面复制的说明: BeanContext
        java.lang.ClassLoader.getResourceAsStream() ,此方法允许 BeanContext实现在子 Component和基础 ClassLoader之间插入行为。
        Specified by:
        getResourceAsStream in interface BeanContext
        参数
        name - 请求的资源的名称。
        bcc - 发出请求的子对象。
        结果
        请求的资源作为InputStream
        异常
        NullPointerException - 如果参数为null
      • getResource

        public URL getResource​(String name,
                               BeanContextChild bcc)
        从界面复制的说明: BeanContext
        java.lang.ClassLoader.getResource() ,此方法允许 BeanContext实现插入子 Component与底层 ClassLoader之间的行为。
        Specified by:
        getResource在界面 BeanContext
        参数
        name - 请求的资源的名称。
        bcc - 发出请求的子对象。
        结果
        请求的资源作为InputStream
      • isDesignTime

        public boolean isDesignTime()
        报告此对象当前是否处于设计时模式。
        Specified by:
        isDesignTime in interface DesignMode
        结果
        true如果在设计时模式下,如果没有 false
      • setLocale

        public void setLocale​(Locale newLocale)
                       throws PropertyVetoException
        设置此BeanContext的语言环境。
        参数
        newLocale - 新的语言环境。 如果newLocale是null则此方法调用null
        异常
        PropertyVetoException - 如果新值被拒绝
      • getLocale

        public Locale getLocale()
        获取此 BeanContext的语言环境。
        结果
        BeanContext的当前区域设置
      • needsGui

        public boolean needsGui()

        通常从环境调用此方法,以确定实现者是否“需要”GUI。

        这里使用的算法测试BeanContextPeer及其当前子节点,以确定它们是容器,组件,还是它们实现可见性并返回needsGui()== true。

        Specified by:
        needsGui in interface Visibility
        结果
        true如果实现者需要GUI
      • dontUseGui

        public void dontUseGui()
        通知此实例它可能不再呈现GUI。
        Specified by:
        dontUseGui在界面 Visibility
      • okToUseGui

        public void okToUseGui()
        通知此实例它现在可以呈现GUI
        Specified by:
        okToUseGui在界面 Visibility
      • avoidingGui

        public boolean avoidingGui()
        用于确定 BeanContext子级是否正在避免使用其GUI。
        Specified by:
        avoidingGui在界面 Visibility
        结果
        这个实例是否避免使用它的GUI?
        另请参见:
        Visibility
      • isSerializing

        public boolean isSerializing()
        这是 BeanContext正在序列化吗?
        结果
        如果此 BeanContext当前正在序列化
      • bcsPreSerializationHook

        protected void bcsPreSerializationHook​(ObjectOutputStream oos)
                                        throws IOException
        在defaultWriteObject()之后但在序列化当前可序列化的子级之前由writeObject调用。 子类可以重写此方法,以在此超类序列化子级之前执行其状态的自定义序列化。 但是,子类不应该使用此方法来替换writeObject()的自己的实现(如果有)。
        参数
        oos - 序列化期间使用的 ObjectOutputStream
        异常
        IOException - 如果序列化失败
      • bcsPreDeserializationHook

        protected void bcsPreDeserializationHook​(ObjectInputStream ois)
                                          throws IOException,
                                                 ClassNotFoundException
        在defaultReadObject()之后但在反序列化任何子级之前由readObject调用。 子类可以重写此方法,以在此超类反序列化子项之前对其状态执行自定义反序列化。 但是,子类不应该使用此方法来替换它们自己的readObject()实现(如果有)。
        参数
        ois - 反序列化期间使用的 ObjectInputStream
        异常
        IOException - 如果反序列化失败
        ClassNotFoundException - 如果找不到需要的课程
      • childDeserializedHook

        protected void childDeserializedHook​(Object child,
                                             BeanContextSupport.BCSChild bcsc)
        由readObject与新反序列化的子项和BCSChild调用。
        参数
        child - 新反序列化的孩子
        bcsc - 新反序列化的BCSChild
      • serialize

        protected final void serialize​(ObjectOutputStream oos,
                                       Collection<?> coll)
                                throws IOException
        由writeObject用于序列化Collection。
        参数
        oos - 序列化期间使用的 ObjectOutputStream
        coll - 要序列化的 Collection
        异常
        IOException - 如果序列化失败
      • writeChildren

        public final void writeChildren​(ObjectOutputStream oos)
                                 throws IOException
        用于序列化此 BeanContext所有子女。
        参数
        oos - 序列化期间使用的 ObjectOutputStream
        异常
        IOException - 如果序列化失败
      • validatePendingAdd

        protected boolean validatePendingAdd​(Object targetChild)

        此类的子类可以覆盖或封装此方法,以便为BeanContext添加验证行为,以便在将子对象添加到BeanContext之前立即检查它们。

        参数
        targetChild - 代表孩子创建Child
        结果
        如果将子项添加到此BeanContext,则为true,否则为false。
      • validatePendingRemove

        protected boolean validatePendingRemove​(Object targetChild)

        此类的子类可以覆盖或包含此方法,以便为BeanContext添加验证行为,以便在将子对象从BeanContext中删除之前立即检查它们。

        参数
        targetChild - 代表孩子创建Child
        结果
        如果可以从此BeanContext中删除子项,则为true,否则为false。
      • childJustAddedHook

        protected void childJustAddedHook​(Object child,
                                          BeanContextSupport.BCSChild bcsc)
        子类可以覆盖此方法,以便在添加子项之后和事件通知发生之前简单地扩展add()语义。 在子进程同步的情况下调用该方法。
        参数
        child - 孩子
        bcsc - BCSChild
      • childJustRemovedHook

        protected void childJustRemovedHook​(Object child,
                                            BeanContextSupport.BCSChild bcsc)
        子类可以重写此方法,以便在删除子项之后和事件通知发生之前简单地扩展remove()语义。 在子进程同步的情况下调用该方法。
        参数
        child - 孩子
        bcsc - BCSChild
      • getChildVisibility

        protected static final Visibility getChildVisibility​(Object child)
        获取与指定子项关联的Component(如果有)。
        参数
        child - 指定的子项
        结果
        与指定子项关联的Component(如果有)。
      • getChildSerializable

        protected static final Serializable getChildSerializable​(Object child)
        获取与指定Child关联的Serializable(如果有)
        参数
        child - 指定的子项
        结果
        与指定Child关联的Serializable(如果有)
      • getChildPropertyChangeListener

        protected static final PropertyChangeListener getChildPropertyChangeListener​(Object child)
        获取指定子级的PropertyChangeListener(如果有)
        参数
        child - 指定的子项
        结果
        指定子级的PropertyChangeListener(如果有)
      • getChildVetoableChangeListener

        protected static final VetoableChangeListener getChildVetoableChangeListener​(Object child)
        获取指定子级的VetoableChangeListener(如果有)
        参数
        child - 指定的子项
        结果
        指定子级的VetoableChangeListener(如果有)
      • getChildBeanContextMembershipListener

        protected static final BeanContextMembershipListener getChildBeanContextMembershipListener​(Object child)
        获取指定子级的BeanContextMembershipListener(如果有)
        参数
        child - 指定的子项
        结果
        指定子节点的BeanContextMembershipListener(如果有)
      • getChildBeanContextChild

        protected static final BeanContextChild getChildBeanContextChild​(Object child)
        获取指定子级的BeanContextChild(如果有)
        参数
        child - 指定的子项
        结果
        指定子节点的BeanContextChild(如果有)
        异常
        IllegalArgumentException - 如果child实现BeanContextChild和BeanContextProxy
      • fireChildrenAdded

        protected final void fireChildrenAdded​(BeanContextMembershipEvent bcme)
        在BeanContextMembershipListener接口上触发BeanContextshipEvent
        参数
        bcme - 要开火的事件
      • fireChildrenRemoved

        protected final void fireChildrenRemoved​(BeanContextMembershipEvent bcme)
        在BeanContextMembershipListener接口上触发BeanContextshipEvent
        参数
        bcme - 要开火的事件
      • initialize

        protected void initialize()
        从构造函数和readObject调用的protected方法,用于初始化BeanContextSupport实例的临时状态。 此类使用此方法实例化用于监视子级上的PropertyChange和VetoableChange事件的内部类侦听器。 子类可以包含此方法以添加自己的初始化行为
      • copyChildren

        protected final Object[] copyChildren()
        获取此BeanContext的子项的副本。
        结果
        当前嵌套子项的副本
      • classEquals

        protected static final boolean classEquals​(<?> first,
                                                   <?> second)
        测试两个类对象或它们的名称是否相等。
        参数
        first - 第一个对象
        second - 第二个对象
        结果
        如果相等则为true,否则为false