Spec-Zone .ru
спецификации, руководства, описания, API
|
public class Encoder extends Object
Encoder
class, который может использоваться, чтобы создать файлы или потоки, которые кодируют состояние набора JavaBeans с точки зрения их общедоступных API. Encoder
, в соединении с его делегатами персистентности, ответственно за разламывание графа объектов на серия Statements
s и Expression
s, который может использоваться, чтобы создать это. Подкласс обычно обеспечивает синтаксис для этих выражений, используя некоторую удобочитаемую форму - как исходный код Java или XML.Конструктор и Описание |
---|
Encoder() |
Модификатор и Тип | Метод и Описание |
---|---|
Объект |
get(Object oldInstance)
Возвращает предварительное значение для
oldInstance в среде, создаваемой этим потоком. |
ExceptionListener |
getExceptionListener()
Получает обработчик исключений для этого потока.
|
PersistenceDelegate |
getPersistenceDelegate(Class<?> type)
Возвращает делегата персистентности к данному типу.
|
Объект |
remove(Object oldInstance)
Удаляет запись для этого экземпляра, возвращая старую запись.
|
void |
setExceptionListener(ExceptionListener exceptionListener)
Устанавливает обработчик исключений для этого потока к
exceptionListener . |
void |
setPersistenceDelegate(Class<?> type, PersistenceDelegate delegate)
Связывает указанного делегата персистентности с данным типом.
|
void |
writeExpression(Expression oldExp)
Реализация сначала проверяет, чтобы видеть, было ли выражение с этим значением уже записано.
|
protected void |
writeObject(Object o)
Запишите указанный объект в поток вывода.
|
void |
writeStatement(Statement oldStm)
Оператор записей
oldStm к потоку. |
protected void writeObject(Object o)
o
- Объект, который будет записан потоку.XMLDecoder.readObject()
public void setExceptionListener(ExceptionListener exceptionListener)
exceptionListener
. Обработчик исключений уведомляется, когда этот поток ловит восстанавливаемые исключения.exceptionListener
- Обработчик исключений для этого потока; если null
слушатель исключения значения по умолчанию будет использоваться.getExceptionListener()
public ExceptionListener getExceptionListener()
setExceptionListener(java.beans.ExceptionListener)
public PersistenceDelegate getPersistenceDelegate(Class<?> type)
setPersistenceDelegate(java.lang.Class<?>, java.beans.PersistenceDelegate)
метод это возвращается. Bean
class нужно назвать BeanPersistenceDelegate
и расположенный в том же самом пакете. public class Bean { ... } public class BeanPersistenceDelegate { ... }Экземпляр
BeanPersistenceDelegate
class возвращается для Bean
class. null
, совместно используемый внутренний делегат персистентности возвращается, который кодирует null
значение. enum
объявление, совместно используемый внутренний делегат персистентности возвращается, который кодирует константы этого перечисления их именами. Proxy.newProxyInstance(java.lang.ClassLoader, java.lang.Class<?>[], java.lang.reflect.InvocationHandler)
метод. BeanInfo
поскольку у этого типа есть a BeanDescriptor
который определил атрибут "persistenceDelegate", значение этого именованного атрибута возвращается. Introspector
class. Конструктор по умолчанию является конструктором с самым большим числом параметров, которое имеет ConstructorProperties
аннотация. Если ни один из конструкторов не имеет ConstructorProperties
аннотация, тогда nullary конструктор (конструктор без параметров) будет использоваться. Например, в следующем фрагменте кода, nullary конструкторе для Foo
class будет использоваться, в то время как конструктор с двумя параметрами для Bar
class будет использоваться. public class Foo { public Foo() { ... } public Foo(int x) { ... } } public class Bar { public Bar() { ... } @ConstructorProperties({"x"}) public Bar(int x) { ... } @ConstructorProperties({"x", "y"}) public Bar(int x, int y) { ... } }
type
- class объектовsetPersistenceDelegate(java.lang.Class<?>, java.beans.PersistenceDelegate)
, Introspector.getBeanInfo(java.lang.Class<?>)
, BeanInfo.getBeanDescriptor()
public void setPersistenceDelegate(Class<?> type, PersistenceDelegate delegate)
type
- class объектов, которым применяется к указанный делегат персистентностиdelegate
- делегат персистентности к экземплярам данного типаgetPersistenceDelegate(java.lang.Class<?>)
, Introspector.getBeanInfo(java.lang.Class<?>)
, BeanInfo.getBeanDescriptor()
public Object remove(Object oldInstance)
oldInstance
- Запись, которая должна быть удалена.get(java.lang.Object)
public Object get(Object oldInstance)
oldInstance
в среде, создаваемой этим потоком. Делегат персистентности может использовать mutatesTo
метод, чтобы определить, может ли это значение быть инициализировано, чтобы сформировать эквивалентный объект при выводе или нужно ли новый объект инстанцировать заново. Если поток еще не видел это значение, нуль возвращается.oldInstance
- Экземпляр, который будет искаться.public void writeStatement(Statement oldStm)
oldStm
к потоку. oldStm
должен быть записан полностью с точки зрения среды вызывающих сторон, то есть цель и все параметры должны быть частью записанного графа объектов. Эти выражения представляют серию, "что произошло" выражения, которые говорят поток вывода, как произвести граф объектов как оригинал. Реализация этого метода произведет второе выражение, чтобы представить то же самое выражение в среде, которая будет существовать, когда поток будет считан. Это достигается просто, вызывая writeObject
на цели и всех параметрах и создании нового выражения с результатами.
oldStm
- Выражение, которое будет записано потоку.public void writeExpression(Expression oldExp)
writeStatement
, и значение этого выражения согласовывается со значением клонированного выражения, вызывая writeObject
.oldExp
- Выражение, которое будет записано потоку.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92