X7ROOT File Manager
Current Path:
/opt/alt/ruby18/lib64/ruby/1.8/wsdl/xmlSchema
opt
/
alt
/
ruby18
/
lib64
/
ruby
/
1.8
/
wsdl
/
xmlSchema
/
??
..
??
all.rb
(1.15 KB)
??
annotation.rb
(601 B)
??
any.rb
(1.06 KB)
??
attribute.rb
(2.52 KB)
??
choice.rb
(1.15 KB)
??
complexContent.rb
(1.85 KB)
??
complexType.rb
(2.91 KB)
??
content.rb
(1.59 KB)
??
data.rb
(3.25 KB)
??
element.rb
(3.31 KB)
??
enumeration.rb
(645 B)
??
import.rb
(1.42 KB)
??
importer.rb
(2.18 KB)
??
include.rb
(1014 B)
??
length.rb
(594 B)
??
parser.rb
(3.91 KB)
??
pattern.rb
(642 B)
??
schema.rb
(3.02 KB)
??
sequence.rb
(1.15 KB)
??
simpleContent.rb
(1.15 KB)
??
simpleExtension.rb
(938 B)
??
simpleRestriction.rb
(1.46 KB)
??
simpleType.rb
(1.37 KB)
??
unique.rb
(584 B)
??
xsd2ruby.rb
(2.08 KB)
Editing: xsd2ruby.rb
# XSD4R - XSD to ruby mapping library. # Copyright (C) 2005 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 'xsd/codegen/gensupport' require 'wsdl/xmlSchema/importer' require 'wsdl/soap/classDefCreator' module WSDL module XMLSchema class XSD2Ruby attr_accessor :location attr_reader :opt attr_accessor :logger attr_accessor :basedir def run unless @location raise RuntimeError, "XML Schema location not given" end @xsd = import(@location) @name = create_classname(@xsd) create_file end private def initialize @location = nil @opt = {} @logger = Logger.new(STDERR) @basedir = nil @xsd = nil @name = nil end def create_file create_classdef end def create_classdef @logger.info { "Creating class definition." } @classdef_filename = @name + '.rb' check_file(@classdef_filename) or return write_file(@classdef_filename) do |f| f << WSDL::SOAP::ClassDefCreator.new(@xsd).dump end end def write_file(filename) if @basedir filename = File.join(basedir, filename) end File.open(filename, "w") do |f| yield f end end def check_file(filename) if @basedir filename = File.join(basedir, filename) end if FileTest.exist?(filename) if @opt.key?('force') @logger.warn { "File '#{filename}' exists but overrides it." } true else @logger.warn { "File '#{filename}' exists. #{$0} did not override it." } false end else @logger.info { "Creates file '#{filename}'." } true end end def create_classname(xsd) name = nil if xsd.targetnamespace name = xsd.targetnamespace.scan(/[a-zA-Z0-9]+$/)[0] end if name.nil? 'default' else XSD::CodeGen::GenSupport.safevarname(name) end end def import(location) WSDL::XMLSchema::Importer.import(location) end end end end
Upload File
Create Folder