summaryrefslogtreecommitdiff
path: root/lib/soap/attachment.rb
diff options
context:
space:
mode:
authornahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-24 08:14:57 +0000
committernahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-24 08:14:57 +0000
commit889c7de09d40ebdd3620cf9c0ad74d750b512221 (patch)
tree6c16302232c2b655cfd5ea406a9ac202814a8b35 /lib/soap/attachment.rb
parentefed292c4311c8c182a32ac2afe70c6969815b2d (diff)
Mon Dec 24 17:06:37 2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion at ruby-core and ruby-dev. see [ruby-core:12535], [ruby-dev:31969]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/soap/attachment.rb')
-rw-r--r--lib/soap/attachment.rb107
1 files changed, 0 insertions, 107 deletions
diff --git a/lib/soap/attachment.rb b/lib/soap/attachment.rb
deleted file mode 100644
index 1a59b14018..0000000000
--- a/lib/soap/attachment.rb
+++ /dev/null
@@ -1,107 +0,0 @@
-# soap/attachment.rb: SOAP4R - SwA implementation.
-# Copyright (C) 2002, 2003 Jamie Herre and NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
-
-# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
-# redistribute it and/or modify it under the same terms of Ruby's license;
-# either the dual license version in 2003, or any later version.
-
-
-require 'soap/baseData'
-require 'soap/mapping'
-
-
-module SOAP
-
-
-class SOAPAttachment < SOAPExternalReference
- attr_reader :data
-
- def initialize(value)
- super()
- @data = value
- end
-
-private
-
- def external_contentid
- @data.contentid
- end
-end
-
-
-class Attachment
- attr_reader :io
- attr_accessor :contenttype
-
- def initialize(string_or_readable = nil)
- @string_or_readable = string_or_readable
- @contenttype = "application/octet-stream"
- @contentid = nil
- end
-
- def contentid
- @contentid ||= Attachment.contentid(self)
- end
-
- def contentid=(contentid)
- @contentid = contentid
- end
-
- def mime_contentid
- '<' + contentid + '>'
- end
-
- def content
- if @content == nil and @string_or_readable != nil
- @content = @string_or_readable.respond_to?(:read) ?
- @string_or_readable.read : @string_or_readable
- end
- @content
- end
-
- def to_s
- content
- end
-
- def write(out)
- out.write(content)
- end
-
- def save(filename)
- File.open(filename, "wb") do |f|
- write(f)
- end
- end
-
- def self.contentid(obj)
- # this needs to be fixed
- [obj.__id__.to_s, Process.pid.to_s].join('.')
- end
-
- def self.mime_contentid(obj)
- '<' + contentid(obj) + '>'
- end
-end
-
-
-module Mapping
- class AttachmentFactory < SOAP::Mapping::Factory
- def obj2soap(soap_class, obj, info, map)
- soap_obj = soap_class.new(obj)
- mark_marshalled_obj(obj, soap_obj)
- soap_obj
- end
-
- def soap2obj(obj_class, node, info, map)
- obj = node.data
- mark_unmarshalled_obj(node, obj)
- return true, obj
- end
- end
-
- DefaultRegistry.add(::SOAP::Attachment, ::SOAP::SOAPAttachment,
- AttachmentFactory.new, nil)
-end
-
-
-end