Class: ExistDB::ClassWrap
- Inherits:
-
Object
- Object
- ExistDB::ClassWrap
- Defined in:
- lib/existdb/classwrap.rb
Class Method Summary collapse
Class Method Details
.[](java_obj) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/existdb/classwrap.rb', line 17 def [](java_obj) return nil if java_obj.nil? if java_obj.is_a?(Fixnum) or java_obj.is_a?(String) then return java_obj end klass = map[java_obj.class] if klass then if klass.is_a?(Proc) then return klass.call(java_obj) else return klass.new(java_obj) end else raise "I don't know how to wrap [#{java_obj.class}]" end end |
.map ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/existdb/classwrap.rb', line 34 def map { Java::OrgExistXmldb::LocalCollection => Collection, Java::OrgExistXmldb::LocalXPathQueryService => XQueryService, Java::OrgExistXmldb::LocalResourceSet => ResourceSet, Java::OrgExistXmldb::LocalXMLResource => Resource::Xml, Java::OrgExistXmldb::LocalBinaryResource => Resource::Binary, Java::OrgExistXmldb::FullXmldbURI => Proc.new { |obj| obj.toString }, Java::JavaUtil::Date => Proc.new { |obj| Time.parse( obj.to_s ) }, Java::OrgExistXquery::PathExpr => Proc.new { |obj| obj } } end |