qpid 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
File without changes
@@ -6,7 +6,7 @@ require 'cgi'
6
6
  require 'happymapper'
7
7
 
8
8
  class Qpid
9
- VERSION = '0.1.2'
9
+ VERSION = '0.1.3'
10
10
 
11
11
  class SearchItem
12
12
  include HappyMapper
@@ -82,7 +82,7 @@ class Qpid
82
82
  case xml = client.get_content(function_uri(:updatestatus, mrn))
83
83
  when /<message>NO PATIENT<\/message>/
84
84
  raise Qpid::NoPatientError.new(mrn)
85
- when /<message>NEW<\/message>/
85
+ when /<message>(?:NEW|UNKNOWN STATUS)<\/message>/
86
86
  nil
87
87
  when /<lastupdate>(.+)<\/lastupdate>/
88
88
  begin
@@ -183,4 +183,4 @@ class Qpid
183
183
  def self.ondate(date)
184
184
  todate(date) + " AND " + fromdate(date)
185
185
  end
186
- end
186
+ end
@@ -0,0 +1,58 @@
1
+ <table id="report"><tr><td><pre>Accession Number: BS07W17636 Report Status: Final
2
+ Type: Surgical Pathology
3
+ Specimen Type: LEFT THIGH MASS
4
+ Procedure Date:
5
+ Ordering Provider: GAMZE AYATA M.D.
6
+
7
+ CASE: BS-07-W17636
8
+ PATIENT: PETER RABBITSKI
9
+
10
+
11
+ Resident: Peter M Sadow, M.D., Ph.D.
12
+ Pathologist: Christopher D. M. Fletcher, M.D. FRCPath
13
+
14
+ PATHOLOGIC DIAGNOSIS:
15
+
16
+ CONSULT SLIDES FROM UMASS MEMORIAL, WORCESTER, MA
17
+
18
+ A. LEFT THIGH MASS BIOPSY (S07-16978):
19
+
20
+ HIGH GRADE SPINDLE CELL SARCOMA, likely myofibroblastic in type.
21
+
22
+
23
+ Immunohistochemistry performed at BWH demonstrates the following staining
24
+ profile in tumor cells:
25
+
26
+ Positive: Desmin, SMA (multifocal)
27
+ Negative: GFAP, S100, CD34, Fast Myosin, Myf4
28
+
29
+ (See letter)
30
+
31
+
32
+ CLINICAL DATA:
33
+ History: 51 year-old male with a large mass in the left thigh.
34
+
35
+ TISSUE SUBMITTED:
36
+ Consult slides.
37
+
38
+ GROSS DESCRIPTION:
39
+ Received from UMASS MEMORIAL, THREE BIOTECH, ONE INNOVATION DRIVE, WORCESTER,
40
+ MA, 01655, are four (4) slides and one (1) block.
41
+
42
+ One (1) block is labeled \"S07-16978\" and sublabeled \"B\" and four (4 HE) stained
43
+ slides are labeled \"S07-16978\" and sublabeled \"FS1\", \"A\", \"B\" and \"D\" which
44
+ correspond to left thigh mass performed on 4/20/2007, according to the
45
+ accompanying pathology report bearing the patient\"s name and a letter from Dr.
46
+ Gamze Ayata.
47
+
48
+
49
+
50
+ By his/her signature below, the senior physician certifies that he/she
51
+ personally conducted a microscopic examination (\"gross only\" exam if so stated)
52
+ of the described specimen(s) and rendered or confirmed the diagnosis(es)
53
+ related thereto.
54
+
55
+ Final Diagnosis by Christopher D. M. Fletcher M.D. FRCPath, Electronically
56
+ signed on 4/30/2007
57
+
58
+ </pre></td></tr></table>
@@ -0,0 +1,86 @@
1
+ <table id="report"><tr><th class="report_header">CDR Lab: RAD - CTBxRetper 07/01/2010</th></tr><tr><th>Site: MGH Acc: 301654345 Status: Final</th></tr><a href= "http://radamicas1.mgh.harvard.edu/servlet/com.amicas.servlet.integration.EmbeddedGateway?AN=301654345"> Image </a><tr><td><pre>Exam Number: 301654345 Report Status: Final
2
+ Type: CTBxRetper
3
+ Date/Time: 07/01/2010 10:41
4
+ Exam Code: CTBXRE
5
+ Ordering Provider: Temel, Jennifer S MD
6
+
7
+ HISTORY:
8
+ SEE HX - LUNG CA WITH NEW RP SOFT TISSUE
9
+
10
+
11
+ REPORT PROCEDURE:
12
+ CT-Guided Retroperitoneal Soft Tissue Biopsy
13
+
14
+ INDICATION: T2N1M0 stage IIB NSCLC s/p RM and RL bilobectomy, s/p 4
15
+ cycles of adjuvant chemotherapy. Follow-up PET/CT dated 6/16/10
16
+ revealed a PET positive retroperitoneal soft tissue new from CT of
17
+ 2009.
18
+ Allergies: Penicillin
19
+ Patient held 81 mg Aspirin approximately 10 days before the procedure.
20
+
21
+ OPERATORS:
22
+ FELLOW: Dr. Nisha Sainani
23
+ ATTENDING: Dr. Ronald Arellano was present for the entire procedure
24
+
25
+ CONSENT:
26
+ The patient was informed of the nature of the proposed procedure.
27
+ The purposes, alternatives, risks, and benefits were explained and
28
+ discussed. All questions were answered and written consent was
29
+ obtained.
30
+
31
+ ANESTHESIA: Intravenous conscious sedation was administered by
32
+ radiology nursing. Continuous hemodynamic and respiratory monitoring
33
+ was performed, including the use of pulse oximetry.
34
+
35
+ START TIME: 9:25 am
36
+ STOP TIME: 10:45 am
37
+
38
+ MEDICATIONS:
39
+ Fentanyl (mcg) IV 200 mcg
40
+ Versed (mg) IV 4 mg
41
+ 1% Local Lidocaine
42
+
43
+ SUPPLIES:
44
+ 22 G x 20 cm Chiba needle (Cook)
45
+ 18 G x 20 cm Temno (CardinalHealth) co-axial biopsy needle set
46
+
47
+ INFECTION CONTROL: All elements of maximal sterile barrier technique
48
+ followed including: cap, mask, sterile gown, sterile gloves, a large
49
+ sterile sheet, hand hygiene, 2% chlorhexidine for cutaneous
50
+ antisepsis (or acceptable alternative antiseptics, per current
51
+ guideline).
52
+
53
+ PROCEDURE:
54
+ The patient was placed in right lateral decubitus position on the CT
55
+ table. A &quot;timeout&quot; was performed before the start of the procedure
56
+ with the patient on the table to verify the correct patient,
57
+ procedure and position. Preliminary axial CT images were obtained
58
+ with radioopaque cutaneous grid. The retroperitoneal peri-aortic
59
+ soft tissue was localized. After assessing the most direct access to
60
+ the lesion from the left side, the patient's skin was prepped and
61
+ draped in the usual sterile fashion. 1% Lidocaine local anesthetic
62
+ was infiltrated in the skin and subcutaneous tissues. Subsequently,
63
+ a 17 gauge introducer needle was advanced through left
64
+ retroperitoneum into the lesion. Fine needle aspirations (22 gauge)
65
+ and and 18 gauge core biopsy samples (three) of the mass obtained and
66
+ were sent for cytology and surgical pathology analysis.
67
+
68
+ Postbiopsy images demonstrated no hemorrhage and few pockets of air
69
+ in the retroperitoneum.
70
+
71
+ The patient tolerated the procedure well and was transported to the
72
+ recovery area in stable condition.
73
+
74
+
75
+ IMPRESSION:
76
+ CT GUIDED BIOPSY OF RETROPERITONEAL SOFT TISSUE.
77
+
78
+ PLAN:
79
+ Follow up on biopsy results.
80
+
81
+
82
+ RADIOLOGISTS: SIGNATURES:
83
+ Sainani, Nisha I MBBS
84
+ Arellano, Ronald S Attending Arellano, Ronald S Attending
85
+
86
+ </pre></td></tr></table>
@@ -0,0 +1 @@
1
+ <?xml version='1.0'?><searchlist><mrn>3000888</mrn><request>type:PAT</request><query><search>{type:PAT}</search><searchitem><type>PAT</type><MID>4417067</MID><Scheduledate>2007-07-17</Scheduledate><site></site><status></status><desc><![CDATA[Surgical Pathology]]></desc><context><![CDATA[]]></context></searchitem><searchitem><type>PAT</type><MID>4318532</MID><Scheduledate>2007-04-26</Scheduledate><site></site><status></status><desc><![CDATA[Surgical Pathology]]></desc><context><![CDATA[]]></context></searchitem><searchitem><type>PAT</type><MID>4313382</MID><Scheduledate>2007-04-23</Scheduledate><site></site><status></status><desc><![CDATA[Surgical Pathology]]></desc><context><![CDATA[]]></context></searchitem></query></searchlist>
@@ -0,0 +1 @@
1
+ <?xml version='1.0'?><searchlist><request>type:PAT and fromdate:\"07/01/2007\"</request><query><search>({type:PAT} AND {fromdate:07/01/2007})</search><searchitem><type>PAT</type><MRN>3000888</MRN><MID>4417067</MID><Scheduledate>2007-07-17</Scheduledate><site></site><status></status><desc><![CDATA[Surgical Pathology]]></desc><context><![CDATA[]]></context></searchitem></query></searchlist>
@@ -0,0 +1,17 @@
1
+ <?xml version='1.0'?>
2
+ <searchlist>
3
+ <mrn>3000888</mrn>
4
+ <request>type:RAD</request>
5
+ <query>
6
+ <search>{type:RAD}</search>
7
+ <searchitem>
8
+ <type>RAD</type>
9
+ <MID>63580395</MID>
10
+ <Scheduledate>2010-07-01</Scheduledate>
11
+ <site></site>
12
+ <status></status>
13
+ <desc><![CDATA[CTBxRetper]]></desc>
14
+ <context><![CDATA[]]></context>
15
+ </searchitem>
16
+ </query>
17
+ </searchlist>
@@ -0,0 +1,113 @@
1
+ require 'cgi'
2
+ require 'yaml'
3
+ require 'logger'
4
+ require 'date'
5
+ require 'active_support'
6
+ require 'fake_web'
7
+
8
+ class MockHttpClient
9
+ attr_accessor :data, :logger, :username, :password, :next_response_nil
10
+ attr_reader :updatetimes, :delays, :reload_times
11
+
12
+ FakeWeb.allow_net_connect = false
13
+
14
+ def initialize(yaml_file, logger = nil)
15
+ self.logger = logger || Logger.new(STDERR)
16
+ config = YAML.load_file(yaml_file)
17
+ config[:content].each do |item|
18
+ content = File.open(File.join(File.dirname(__FILE__), "content", item[:content])) do |f|
19
+ f.read
20
+ end
21
+ self.logger.info("Setting up test URI #{item[:url]}")
22
+ FakeWeb.register_uri(:get, item[:url], :body => content)
23
+ end
24
+ @updatetimes = {}
25
+ @reload_times = {}
26
+ @delays = {}
27
+ config[:patients].each_pair do |mrn, times|
28
+ @updatetimes[mrn] = DateTime.parse(times[:updatetime])
29
+ @delays[mrn] = times[:delay]
30
+ end
31
+ yield self if block_given?
32
+ self
33
+ end
34
+
35
+ def set_auth(foo, username, password)
36
+ logger.info("Setting username and password, username is \"#{username}\"")
37
+ self.username = username
38
+ self.password = password
39
+ self
40
+ end
41
+
42
+ def self.parse_uri(uri)
43
+ uri = uri.respond_to?(:query) ? uri : URI::parse(uri)
44
+ terms = Hash.new(nil)
45
+ uri.query.split('&').each do |el|
46
+ el =~ /^(.+)=(.+)$/
47
+ terms[$1] = CGI.unescape($2)
48
+ end
49
+ terms
50
+ end
51
+
52
+ def get_content(uri)
53
+ uri = uri.respond_to?(:host) ? uri : URI::parse(uri)
54
+ logger.info("Getting content for URI [#{uri.to_s}]")
55
+ req = MockHttpClient.parse_uri(uri)
56
+ raise "Must specify a USER in a QPID URI (got [#{uri.to_s}])" unless req["USER"]
57
+ raise "Must specify a MRN in a QPID URI (got [#{uri.to_s}])" unless req["MRN"]
58
+
59
+ # Check if we're giving junk next
60
+ if next_response_nil && next_response_nil > 0
61
+ logger.warn "Giving null response (#{next_response_nil - 1} left)"
62
+ self.next_response_nil = next_response_nil - 1
63
+ return nil
64
+ end
65
+
66
+ # Check to see if we know about this patient
67
+ unless updatetimes[req["MRN"]]
68
+ return no_patient_response
69
+ end
70
+
71
+ # Otherwise, figure out what we're doing
72
+ case req["function"]
73
+ when "updatestatus"
74
+ updatestatus_response(req["MRN"])
75
+ when "reload"
76
+ status = "UPDATING"
77
+ delay = delays[req["MRN"]] || 5
78
+ if reload_times[req["MRN"]]
79
+ if DateTime.now > reload_times[req["MRN"]].since(delay)
80
+ updatetimes[req["MRN"]] = reload_times[req["MRN"]].since(delay)
81
+ reload_times.delete(req["MRN"])
82
+ status = "OK"
83
+ end
84
+ else
85
+ reload_times[req["MRN"]] = DateTime.now
86
+ end
87
+ updatestatus_response(req["MRN"], status)
88
+ when "search"
89
+ raise "Tried to use the search function without a search parameter [#{uri.to_s}]" unless req["search"]
90
+ Net::HTTP.get(uri)
91
+ when "report"
92
+ raise "Tried to use the report function without a type parameter" unless req["type"]
93
+ raise "Tried to use the report function without a MID parameter" unless req["MID"]
94
+ Net::HTTP.get(uri)
95
+ else
96
+ raise "Got an apparently invalid QPID function \"#{req.function}\" [#{uri.to_s}]"
97
+ end
98
+ end
99
+
100
+ def updatestatus_response(mrn, status = nil)
101
+ if updatetime = updatetimes[mrn]
102
+ hours_ago = (DateTime.now - updatetime).to_f * 24.0
103
+ status ||= (hours_ago < 1) ? "OK" : "STALE"
104
+ "<updatestatus><lastupdate>#{updatetime.strftime("%Y-%m-%dT%H:%M:%S")}</lastupdate><message>#{status}</message></updatestatus>"
105
+ else
106
+ no_patient_response
107
+ end
108
+ end
109
+
110
+ def no_patient_response
111
+ "<updatestatus><message>NO PATIENT</message></updatestatus>"
112
+ end
113
+ end
@@ -0,0 +1,6 @@
1
+ host: qpid.example.org
2
+ path: /path/to/servlet
3
+ user: realuser
4
+ http_user: servicename
5
+ http_password: servicepw
6
+ query_interval: 1.0
@@ -0,0 +1,21 @@
1
+ ---
2
+ :patients:
3
+ "3000888":
4
+ :updatetime: 2010-06-12 12:15:23 0
5
+ :delay: 3
6
+ "1358881":
7
+ :updatetime: 2010-07-15 13:15:55 0
8
+ :delay: 2
9
+ :content:
10
+ - :url: http://qpid.example.org/path/to/servlet?xml=1&search=type%3APAT&function=search&MRN=3000888&USER=realuser
11
+ :content: 3000888_search_type.xml
12
+ - :url: http://qpid.example.org/path/to/servlet?xml=1&search=type%3ARAD&function=search&MRN=3000888&USER=realuser
13
+ :content: 3000888_search_type_rad.xml
14
+ - :url: http://qpid.example.org/path/to/servlet?xml=1&search=type%3APAT+and+fromdate%3A%2207%2F01%2F2007%22&function=search&MRN=3000888&USER=realuser
15
+ :content: 3000888_search_type_fromdate.xml
16
+ - :url: http://qpid.example.org/path/to/servlet?type=PAT&xml=1&function=report&MID=4417067&MRN=3000888&USER=realuser
17
+ :content: 3000888_report_pat_4313382_1.xml
18
+ - :url: http://qpid.example.org/path/to/servlet?type=PAT&xml=1&function=report&MID=4313382&MRN=3000888&USER=realuser
19
+ :content: 3000888_report_pat_4313382_1.xml
20
+ - :url: http://qpid.example.org/path/to/servlet?type=RAD&xml=1&function=report&MID=63580395&MRN=3000888&USER=realuser
21
+ :content: 3000888_report_rad_63580395.xml
metadata CHANGED
@@ -1,128 +1,149 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: qpid
3
- version: !ruby/object:Gem::Version
4
- hash: 31
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 1
9
- - 2
10
- version: 0.1.2
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.3
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
13
- - Tarik K. Alkasab
7
+ authors:
8
+ - Tarik K. Alkasab, MD, PhD
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2009-10-21 00:00:00 -04:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-10-03 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: happymapper
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 19
30
- segments:
31
- - 0
32
- - 3
33
- - 0
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
34
21
  version: 0.3.0
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: httpclient
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.3.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: httpclient
32
+ requirement: !ruby/object:Gem::Requirement
41
33
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 119
46
- segments:
47
- - 2
48
- - 1
49
- - 5
50
- - 2
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
51
37
  version: 2.1.5.2
52
38
  type: :runtime
53
- version_requirements: *id002
54
- - !ruby/object:Gem::Dependency
55
- name: hoe
56
39
  prerelease: false
57
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 2.1.5.2
46
+ - !ruby/object:Gem::Dependency
47
+ name: rdoc
48
+ requirement: !ruby/object:Gem::Requirement
58
49
  none: false
59
- requirements:
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- hash: 5
63
- segments:
64
- - 2
65
- - 3
66
- - 3
67
- version: 2.3.3
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: '3.10'
68
54
  type: :development
69
- version_requirements: *id003
70
- description: The QPID (Queriable Patient Inference Dossier, developed at Massachusetts General Hospital) aggregates and permits semantic searching of electronic medical record systems. The Qpid gem provides a ruby interface to the web service which QPID-based systems offer for searching and accessing medical record information.
71
- email:
72
- - tarik.alkasab@gmail.com
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '3.10'
62
+ - !ruby/object:Gem::Dependency
63
+ name: newgem
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: 1.5.3
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: 1.5.3
78
+ - !ruby/object:Gem::Dependency
79
+ name: hoe
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: '3.1'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: '3.1'
94
+ description: Interface to QPID, the Queriable Patient Inference Dossier system.
95
+ email:
96
+ - talkasab@partners.org
73
97
  executables: []
74
-
75
98
  extensions: []
76
-
77
- extra_rdoc_files:
99
+ extra_rdoc_files:
78
100
  - History.txt
79
101
  - Manifest.txt
80
- files:
102
+ - README.rdoc
103
+ files:
81
104
  - History.txt
82
105
  - Manifest.txt
83
106
  - README.rdoc
84
107
  - Rakefile
85
108
  - lib/qpid.rb
86
109
  - script/console
87
- - script/destroy
88
- - script/generate
89
110
  - test/test_helper.rb
90
111
  - test/test_qpid.rb
91
- has_rdoc: true
112
+ - test/content/3000888_report_pat_4313382_1.xml
113
+ - test/content/3000888_report_rad_63580395.xml
114
+ - test/content/3000888_search_type.xml
115
+ - test/content/3000888_search_type_fromdate.xml
116
+ - test/content/3000888_search_type_rad.xml
117
+ - test/mock_http_client.rb
118
+ - test/qpid.yml
119
+ - test/qpid_test_data.yml
120
+ - .gemtest
92
121
  homepage: http://github.com/talkasab/qpid
93
122
  licenses: []
94
-
95
123
  post_install_message:
96
- rdoc_options:
124
+ rdoc_options:
97
125
  - --main
98
126
  - README.rdoc
99
- require_paths:
127
+ require_paths:
100
128
  - lib
101
- required_ruby_version: !ruby/object:Gem::Requirement
129
+ required_ruby_version: !ruby/object:Gem::Requirement
102
130
  none: false
103
- requirements:
104
- - - ">="
105
- - !ruby/object:Gem::Version
106
- hash: 3
107
- segments:
108
- - 0
109
- version: "0"
110
- required_rubygems_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ! '>='
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ required_rubygems_version: !ruby/object:Gem::Requirement
111
136
  none: false
112
- requirements:
113
- - - ">="
114
- - !ruby/object:Gem::Version
115
- hash: 3
116
- segments:
117
- - 0
118
- version: "0"
137
+ requirements:
138
+ - - ! '>='
139
+ - !ruby/object:Gem::Version
140
+ version: '0'
119
141
  requirements: []
120
-
121
142
  rubyforge_project: qpid
122
- rubygems_version: 1.3.7
143
+ rubygems_version: 1.8.24
123
144
  signing_key:
124
145
  specification_version: 3
125
- summary: Interface to medical record search systems based on the QPID (Queriable Patient Inference Dossier) system.
126
- test_files:
146
+ summary: Interface to QPID, the Queriable Patient Inference Dossier system.
147
+ test_files:
127
148
  - test/test_helper.rb
128
149
  - test/test_qpid.rb
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
3
-
4
- begin
5
- require 'rubigen'
6
- rescue LoadError
7
- require 'rubygems'
8
- require 'rubigen'
9
- end
10
- require 'rubigen/scripts/destroy'
11
-
12
- ARGV.shift if ['--help', '-h'].include?(ARGV[0])
13
- RubiGen::Base.use_component_sources! [:rubygems, :newgem, :newgem_theme, :test_unit]
14
- RubiGen::Scripts::Destroy.new.run(ARGV)
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
3
-
4
- begin
5
- require 'rubigen'
6
- rescue LoadError
7
- require 'rubygems'
8
- require 'rubigen'
9
- end
10
- require 'rubigen/scripts/generate'
11
-
12
- ARGV.shift if ['--help', '-h'].include?(ARGV[0])
13
- RubiGen::Base.use_component_sources! [:rubygems, :newgem, :newgem_theme, :test_unit]
14
- RubiGen::Scripts::Generate.new.run(ARGV)