Java Doc for IDResolver.java in  » 6.0-JDK-Modules » jaxb-impl » com » sun » xml » bind » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » 6.0 JDK Modules » jaxb impl » com.sun.xml.bind 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   com.sun.xml.bind.IDResolver

All known Subclasses:   com.sun.xml.bind.v2.runtime.unmarshaller.DefaultIDResolver,
IDResolver
abstract public class IDResolver (Code)
Pluggable ID/IDREF handling layer.

THIS INTERFACE IS SUBJECT TO CHANGE WITHOUT NOTICE.

This 'interface' can be implemented by applications and specified to Unmarshaller.setProperty(StringObject) to ovierride the ID/IDREF processing of the JAXB RI like this:

 unmarshaller.setProperty(IDResolver.class.getName(),new MyIDResolverImpl());
 

Error Handling

This component runs inside the JAXB RI unmarshaller. Therefore, it needs to coordinate with the JAXB RI unmarshaller when it comes to reporting errors. This makes sure that applications see consistent error handling behaviors.

When the IDResolver.startDocument(ValidationEventHandler) method is invoked, the unmarshaller passes in a ValidationEventHandler that can be used by this component to report any errors encountered during the ID/IDREF processing.

When an error is detected, the error should be first reported to this ValidationEventHandler . If the error is fatal or the event handler decided to abort, the implementation should throw a SAXException . This signals the unmarshaller to abort the processing.
author:
   Kohsuke Kawaguchi
since:
   JAXB 2.0 beta





Method Summary
abstract public  voidbind(String id, Object obj)
     Binds the given object to the specified ID.
public  voidendDocument()
     Called after the unmarshalling completes.
abstract public  Callableresolve(String id, Class targetType)
     Obtains the object to be pointed by the IDREF value.

While a document is being unmarshalled, every time an IDREF value is found, this method is invoked immediately to obtain the object that the IDREF is pointing to.

This method returns a Callable to support forward-references. When this method returns with a non-null return value, the JAXB RI unmarshaller invokes the Callable.call method immediately. If the implementation can find the target object (in which case it was a backward reference), then a non-null object shall be returned, and it is used as the target object.

When a forward-reference happens, the call method should return null.

public  voidstartDocument(ValidationEventHandler eventHandler)
     Called when the unmarshalling starts.



Method Detail
bind
abstract public void bind(String id, Object obj) throws SAXException(Code)
Binds the given object to the specified ID.

While a document is being unmarshalled, every time an ID value is found, this method is invoked to remember the association between ID and objects. This association is supposed to be used later to resolve IDREFs.

This method is invoked right away as soon as a new ID value is found.
Parameters:
  id - The ID value found in the document being unmarshalled.Always non-null.
Parameters:
  obj - The object being unmarshalled which is going to own the ID.Always non-null.




endDocument
public void endDocument() throws SAXException(Code)
Called after the unmarshalling completes.

This is a good opporunity to reset any internal state of this object, so that it doesn't keep references to other objects unnecessarily.




resolve
abstract public Callable resolve(String id, Class targetType) throws SAXException(Code)
Obtains the object to be pointed by the IDREF value.

While a document is being unmarshalled, every time an IDREF value is found, this method is invoked immediately to obtain the object that the IDREF is pointing to.

This method returns a Callable to support forward-references. When this method returns with a non-null return value, the JAXB RI unmarshaller invokes the Callable.call method immediately. If the implementation can find the target object (in which case it was a backward reference), then a non-null object shall be returned, and it is used as the target object.

When a forward-reference happens, the call method should return null. In this case the JAXB RI unmarshaller invokes the call method again after all the documents are fully unmarshalled. If the call method still returns null, then the JAXB RI unmarshaller treats it as an error.

A Callable object returned from this method may not throw any exception other than a SAXException (which means a fatal error.)
Parameters:
  id - The IDREF value found in the document being unmarshalled.Always non-null.
Parameters:
  targetType - The expected type to which ID resolves to. JAXB infers thisinformation from the signature of the fields that has XmlIDREF.When a property is a collection, this parameter will be the typeof the individual item in the collection.null if the implementation is sure that the parameter combinationwill never yield a valid object. Otherwise non-null.




startDocument
public void startDocument(ValidationEventHandler eventHandler) throws SAXException(Code)
Called when the unmarshalling starts.

Since one Unmarshaller may be used multiple times to unmarshal documents, one IDResolver may be used multiple times, too.
Parameters:
  eventHandler - Any errors found during the unmarshalling should be reported to this object.




Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.