metamri 0.1.11 → 0.1.13

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -27,6 +27,8 @@ begin
27
27
  gemspec.email = "kk4@medicine.wisc.edu"
28
28
  gemspec.homepage = "http://github.com/brainmap/metamri"
29
29
  gemspec.authors = ["Kristopher J. Kosmatka"]
30
+ gemspec.add_dependency('sqlite3-ruby')
31
+ gemspec.add_development_dependency('rspec')
30
32
  end
31
33
  Jeweler::GemcutterTasks.new
32
34
  rescue LoadError
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.11
1
+ 0.1.13
@@ -35,26 +35,40 @@ $:.unshift File.join(File.dirname(__FILE__),'..','lib')
35
35
  require 'metamri'
36
36
  require 'pathname'
37
37
  require 'rdoc/usage'
38
- require 'logger'
38
+ # require 'logger'
39
39
 
40
40
  def list_visit(raw_directory)
41
- $LOG = Logger.new(STDOUT)
42
- $LOG.level = Logger::INFO
43
- visit = VisitRawDataDirectory.new(raw_directory)
44
- # visit = VisitRawDataDirectoryResource.find(:all, :from => '/visits/found.xml', :params => {:visit_search => {:rmr => 'rmr'}})
45
-
41
+ # $LOG = Logger.new(STDOUT)
42
+ # $LOG.level = Logger::INFO
43
+
44
+ # First try to lookup Visit and Datasets through active_resource
45
+ # Then fall back to scanning them fresh.
46
+
46
47
  begin
47
- visit.scan
48
- # visit.datasets = RawImageDatasetResource.find(:all, :from => "/visits/#{visit.database_id}/image_datasets.xml" )
49
- rescue IndexError => e
50
- $LOG.error "Are you sure #{raw_directory} is a valid raw visit directory?"
51
- raise e
48
+ # raise
49
+ visit = VisitRawDataDirectoryResource.find(:first, :params => {:search => {:path => raw_directory}})
50
+ raise "Could not lookup visit using path." unless visit
51
+ raise "Incorrect visit found." unless visit.path == raw_directory
52
52
  rescue Exception => e
53
- $LOG.error "There was a problem scanning a dataset in #{visit.visit_directory}... skipping."
54
- $LOG.error "Exception message: #{e.message}"
55
- raise e
53
+ puts e
54
+ visit = VisitRawDataDirectory.new(raw_directory)
55
+ begin
56
+ visit.scan
57
+ rescue IndexError => e
58
+ $LOG.error "Are you sure #{raw_directory} is a valid raw visit directory?"
59
+ raise e
60
+ end
56
61
  end
62
+
63
+ # begin
64
+ # rescue Exception => e
65
+ # $LOG.error "There was a problem scanning a dataset in #{visit.visit_directory}... skipping."
66
+ # $LOG.error "Exception message: #{e.message}"
67
+ # raise e
68
+ # end
57
69
 
70
+ # Visit is Either a RawVisitDataDirectory or a RawVisitDataDirectoryResource
71
+ # Either can handle printing to_s
58
72
  visit.to_s
59
73
 
60
74
  end
@@ -63,7 +77,8 @@ if File.basename(__FILE__) == File.basename($PROGRAM_NAME)
63
77
  RDoc::usage() if (ARGV[0] == '-h')
64
78
 
65
79
  # Default to scanning the current directory if no argument was given.
66
- raw_directory = ARGV[0] ||= File.expand_path('.')
80
+ raw_directory = ARGV[0] ||= Dir.pwd
81
+ raw_directory = File.expand_path(raw_directory)
67
82
 
68
83
  list_visit(raw_directory)
69
84
  end
@@ -7,7 +7,7 @@ class RawImageDatasetResource < ActiveResource::Base
7
7
  # Creates a Backwards Transfer to go from ActiveRecord to Metamri Classes
8
8
  # ActiveResource will provide :attr methods for column names from the database,
9
9
  # so check the current schema.rb file for those.
10
- def to_metamri_image_dataset
10
+ def to_metamri_raw_image_dataset
11
11
  # A Metamri Class requires at least one valid image file.
12
12
  # This is a little tricky since we really only care about the variables, not rescanning them.
13
13
 
@@ -17,4 +17,16 @@ class RawImageDatasetResource < ActiveResource::Base
17
17
 
18
18
  return @dataset
19
19
  end
20
+
21
+ # Map RawImageDatasetResource and RawImageDataset
22
+ # def method_missing(m, *args, &block)
23
+ # puts m
24
+ # if m == :directory
25
+ # path
26
+ # elsif m == :directory_basename
27
+ # File.basename(directory)
28
+ # else
29
+ # super
30
+ # end
31
+ # end
20
32
  end
@@ -1,6 +1,7 @@
1
- require 'active_resource'
1
+ $:.unshift File.dirname(__FILE__)
2
2
 
3
- DATAPANDA_SERVER = 'http://144.92.151.228'
3
+ require 'active_resource'
4
+ require 'raw_image_dataset_resource'
4
5
 
5
6
  class VisitRawDataDirectoryResource < ActiveResource::Base
6
7
  self.site = VisitRawDataDirectory::DATAPANDA_SERVER
@@ -17,4 +18,15 @@ class VisitRawDataDirectoryResource < ActiveResource::Base
17
18
  @visit.database_id = id
18
19
  return @visit
19
20
  end
20
- end
21
+
22
+ def datasets
23
+ @datasets ||= RawImageDatasetResource.find(:all, :from => "/visits/#{id}/image_datasets.xml" )
24
+ end
25
+
26
+ def to_s
27
+ metamri_visit = to_metamri_visit_raw_data_directory
28
+ metamri_visit.datasets = datasets.collect { |ds| ds.to_metamri_raw_image_dataset}
29
+ metamri_visit.to_s
30
+ end
31
+ end
32
+
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{metamri}
8
- s.version = "0.1.11"
8
+ s.version = "0.1.13"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kristopher J. Kosmatka"]
12
- s.date = %q{2010-02-03}
12
+ s.date = %q{2010-02-04}
13
13
  s.description = %q{Extraction of MRI metadata and insertion into compatible sqlite3 databases.}
14
14
  s.email = %q{kk4@medicine.wisc.edu}
15
15
  s.executables = ["import_study.rb", "import_visit.rb", "import_respiratory_files.rb", "list_visit", "convert_visit.rb"]
@@ -63,9 +63,15 @@ Gem::Specification.new do |s|
63
63
  s.specification_version = 3
64
64
 
65
65
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
66
+ s.add_runtime_dependency(%q<sqlite3-ruby>, [">= 0"])
67
+ s.add_development_dependency(%q<rspec>, [">= 0"])
66
68
  else
69
+ s.add_dependency(%q<sqlite3-ruby>, [">= 0"])
70
+ s.add_dependency(%q<rspec>, [">= 0"])
67
71
  end
68
72
  else
73
+ s.add_dependency(%q<sqlite3-ruby>, [">= 0"])
74
+ s.add_dependency(%q<rspec>, [">= 0"])
69
75
  end
70
76
  end
71
77
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metamri
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.11
4
+ version: 0.1.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kristopher J. Kosmatka
@@ -9,10 +9,29 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-02-03 00:00:00 -06:00
12
+ date: 2010-02-04 00:00:00 -06:00
13
13
  default_executable:
14
- dependencies: []
15
-
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: sqlite3-ruby
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: rspec
27
+ type: :development
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
16
35
  description: Extraction of MRI metadata and insertion into compatible sqlite3 databases.
17
36
  email: kk4@medicine.wisc.edu
18
37
  executables: