Welcome to the "trac"-ing site of soap4r!
[soap4r] [httpclient] [openpgp4u] [pkcs1] [logger] [csv] [vtr]

Changeset 1839

Show
Ignore:
Timestamp:
06/08/07 13:57:03 (1 year ago)
Author:
nahi
Message:
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lib/soap/baseData.rb

    r1837 r1839  
    238238  extend SOAPModuleUtils 
    239239  SOAPENCType = QName.new(EncodingNamespace, StringLiteral) 
    240 end 
    241  
    242 class SOAPNormalizedString < XSD::XSDNormalizedString 
    243   include SOAPBasetype 
    244   extend SOAPModuleUtils 
    245   SOAPENCType = QName.new(EncodingNamespace, NormalizedStringLiteral) 
    246 end 
    247  
    248 class SOAPToken < XSD::XSDToken 
    249   include SOAPBasetype 
    250   extend SOAPModuleUtils 
    251   SOAPENCType = QName.new(EncodingNamespace, TokenLiteral) 
    252 end 
    253  
    254 class SOAPLanguage < XSD::XSDLanguage 
    255   include SOAPBasetype 
    256   extend SOAPModuleUtils 
    257   SOAPENCType = QName.new(EncodingNamespace, LanguageLiteral) 
    258240end 
    259241 
  • trunk/lib/soap/mapping/encodedregistry.rb

    r1824 r1839  
    188188    [::String,       ::SOAP::SOAPGMonth,     BasetypeFactory], 
    189189    [::String,       ::SOAP::SOAPQName,      BasetypeFactory], 
    190     [::String,       ::SOAP::SOAPNormalizedString, BasetypeFactory], 
    191     [::String,       ::SOAP::SOAPToken,      BasetypeFactory], 
    192     [::String,       ::SOAP::SOAPLanguage,   BasetypeFactory], 
    193190 
    194191    [::Hash,         ::SOAP::SOAPArray,      HashFactory], 
     
    254251    [::String,       ::SOAP::SOAPGMonth,     BasetypeFactory], 
    255252    [::String,       ::SOAP::SOAPQName,      BasetypeFactory], 
    256     [::String,       ::SOAP::SOAPNormalizedString, BasetypeFactory], 
    257     [::String,       ::SOAP::SOAPToken,      BasetypeFactory], 
    258     [::String,       ::SOAP::SOAPLanguage,   BasetypeFactory], 
    259253 
    260254    [::Hash,         ::SOAP::SOAPArray,      HashFactory], 
  • trunk/lib/soap/mapping/typeMap.rb

    r1824 r1839  
    1414 
    1515  XSD::XSDString::Type => SOAPString, 
    16   XSD::XSDNormalizedString::Type => SOAPNormalizedString, 
    17   XSD::XSDToken::Type => SOAPToken, 
    18   XSD::XSDLanguage::Type => SOAPLanguage, 
    1916  XSD::XSDBoolean::Type => SOAPBoolean, 
    2017  XSD::XSDDecimal::Type => SOAPDecimal, 
     
    5047  # soap4r does not use soapenc types actively but it should be accepted. 
    5148  SOAP::SOAPString::SOAPENCType => SOAPString, 
    52   SOAP::SOAPNormalizedString::SOAPENCType => SOAPNormalizedString, 
    53   SOAP::SOAPToken::SOAPENCType => SOAPToken, 
    54   SOAP::SOAPLanguage::SOAPENCType => SOAPLanguage, 
    5549  SOAP::SOAPBoolean::SOAPENCType => SOAPBoolean, 
    5650  SOAP::SOAPDecimal::SOAPENCType => SOAPDecimal, 
  • trunk/lib/xsd/datatypes.rb

    r1824 r1839  
    4747 
    4848NormalizedStringLiteral = 'normalizedString' 
    49 TokenLiteral = 'token' 
    50 LanguageLiteral = 'language' 
     49#3.3.2 token 
     50##3.3.3 language 
    5151#3.3.4 NMTOKEN 
    5252#3.3.5 NMTOKENS 
     
    256256    if d.is_a?(String) 
    257257      # Integer("00012") => 10 in Ruby. 
    258       d = d.sub(/^([+\-]?)0*(?=\d)/, "\\1") 
     258      d.sub!(/^([+\-]?)0*(?=\d)/, "\\1") 
    259259    end 
    260260    screen_data_str(d) 
     
    10151015end 
    10161016 
    1017 class XSDToken < XSDNormalizedString 
    1018   Type = QName.new(Namespace, TokenLiteral) 
    1019  
    1020   def initialize(value = nil) 
    1021     init(Type, value) 
    1022   end 
    1023  
    1024 private 
    1025  
    1026   def screen_data(value) 
    1027     if /[\t\n]|\A | \z|  / =~ value 
    1028       raise ValueSpaceError.new("#{ type }: cannot accept '#{ value }'.") 
    1029     end 
    1030     super 
    1031   end 
    1032 end   
    1033  
    1034 class XSDLanguage < XSDToken 
    1035   Type = QName.new(Namespace, LanguageLiteral) 
    1036  
    1037   def initialize(value = nil) 
    1038     init(Type, value) 
    1039   end 
    1040  
    1041 private 
    1042  
    1043   def screen_data(value) 
    1044     if /\A(aa|ab|ae|af|ak|am|an|ar|as|av|ay|az|ba|be|bg|bh|bi|bm|bn|bo|br|bs|ca|ce|ch|co|cr|cs|cu|cv|cy|da|de|dv|dz|ee|el|en|eo|es|et|eu|fa|ff|fi|fj|fo|fr|fy|ga|gd|gl|gn|gu|gv|ha|he|hi|ho|hr|ht|hu|hy|hz|ia|id|ie|ig|ii|ik|io|is|it|iu|ja|jv|ka|kg|ki|kj|kk|kl|km|kn|ko|kr|ks|ku|kv|kw|ky|la|lb|lg|li|ln|lo|lt|lu|lv|mg|mh|mi|mk|ml|mn|mo|mr|ms|mt|my|na|nb|nd|ne|ng|nl|nn|no|nr|nv|ny|oc|oj|om|or|os|pa|pi|pl|ps|pt|qu|rm|rn|ro|ru|rw|sa|sc|sd|se|sg|sh|si|sk|sl|sm|sn|so|sq|sr|ss|st|su|sv|sw|ta|te|tg|th|ti|tk|tl|tn|to|tr|ts|tt|tw|ty|ug|uk|ur|uz|ve|vi|vo|wa|wo|xh|yi|yo|za|zh|zu)\z/ =~ value 
    1045       raise ValueSpaceError.new("#{ type }: cannot accept '#{ value }', see ISO 639 for more information.") 
    1046     end 
    1047     super 
    1048   end 
    1049 end   
    1050  
    10511017class XSDInteger < XSDDecimal 
    10521018  Type = QName.new(Namespace, IntegerLiteral) 
  • trunk/test/xsd/test_xsd.rb

    r1776 r1839  
    102102  end 
    103103 
     104=begin not implemented for now 
    104105  def test_XSDNormalizedString 
    105106    XSD::Charset.module_eval { @encoding_backup = @internal_encoding; @internal_encoding = "NONE" } 
     
    202203    end 
    203204  end 
     205=end 
    204206 
    205207  def test_XSDBoolean