caruby-tissue 1.5.4 → 1.5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/History.md +4 -0
  2. data/examples/galena/README.md +2 -11
  3. data/examples/galena/conf/migration/filter_defaults.yaml +1 -0
  4. data/examples/galena/conf/migration/filter_values.yaml +13 -0
  5. data/examples/galena/lib/galena/tissue/migration/filter_shims.rb +3 -15
  6. data/examples/galena/lib/galena/tissue/migration/frozen_shims.rb +3 -6
  7. data/examples/galena/lib/galena/tissue/seed/defaults.rb +2 -2
  8. data/lib/catissue/annotation/annotatable_class.rb +10 -8
  9. data/lib/catissue/annotation/annotation_class.rb +6 -3
  10. data/lib/catissue/annotation/annotation_module.rb +7 -2
  11. data/lib/catissue/cli/command.rb +11 -4
  12. data/lib/catissue/cli/migrate.rb +5 -16
  13. data/lib/catissue/database/annotation/annotation_service.rb +2 -2
  14. data/lib/catissue/database/annotation/entity_facade.rb +6 -11
  15. data/lib/catissue/database/annotation/record_entry_integrator.rb +4 -4
  16. data/lib/catissue/database/controlled_values.rb +2 -3
  17. data/lib/catissue/database.rb +64 -35
  18. data/lib/catissue/domain/abstract_specimen.rb +24 -26
  19. data/lib/catissue/domain/abstract_specimen_collection_group.rb +1 -1
  20. data/lib/catissue/domain/capacity.rb +1 -1
  21. data/lib/catissue/domain/collection_protocol.rb +12 -9
  22. data/lib/catissue/domain/collection_protocol_event.rb +9 -11
  23. data/lib/catissue/domain/collection_protocol_registration.rb +5 -5
  24. data/lib/catissue/domain/container.rb +3 -4
  25. data/lib/catissue/domain/container_type.rb +11 -12
  26. data/lib/catissue/domain/disposal_event_parameters.rb +1 -1
  27. data/lib/catissue/domain/new_specimen_array_order_item.rb +6 -5
  28. data/lib/catissue/domain/order_details.rb +4 -0
  29. data/lib/catissue/domain/participant.rb +17 -17
  30. data/lib/catissue/domain/participant_medical_identifier.rb +2 -3
  31. data/lib/catissue/domain/site.rb +7 -9
  32. data/lib/catissue/domain/specimen/pathology/prostate_specimen_gleason_score.rb +2 -3
  33. data/lib/catissue/domain/specimen/pathology/prostate_specimen_pathology_annotation.rb +4 -3
  34. data/lib/catissue/domain/specimen/pathology/specimen_additional_finding.rb +5 -7
  35. data/lib/catissue/domain/specimen/pathology/specimen_base_solid_tissue_pathology_annotation.rb +11 -11
  36. data/lib/catissue/domain/specimen/pathology/specimen_details.rb +2 -4
  37. data/lib/catissue/domain/specimen/pathology/specimen_histologic_grade.rb +2 -4
  38. data/lib/catissue/domain/specimen/pathology/specimen_histologic_type.rb +6 -6
  39. data/lib/catissue/domain/specimen/pathology/specimen_histologic_variant_type.rb +2 -4
  40. data/lib/catissue/domain/specimen/pathology/specimen_invasion.rb +2 -4
  41. data/lib/catissue/domain/specimen.rb +35 -45
  42. data/lib/catissue/domain/specimen_array.rb +1 -1
  43. data/lib/catissue/domain/specimen_collection_group/pathology/base_pathology_annotation.rb +4 -4
  44. data/lib/catissue/domain/specimen_collection_group/pathology/base_solid_tissue_pathology_annotation.rb +4 -4
  45. data/lib/catissue/domain/specimen_collection_group.rb +40 -46
  46. data/lib/catissue/domain/specimen_protocol.rb +4 -6
  47. data/lib/catissue/domain/specimen_requirement.rb +13 -16
  48. data/lib/catissue/domain/storage_container.rb +5 -2
  49. data/lib/catissue/domain/storage_type.rb +1 -1
  50. data/lib/catissue/domain/user.rb +16 -7
  51. data/lib/catissue/extract/command.rb +1 -1
  52. data/lib/catissue/extract/delta.rb +7 -15
  53. data/lib/catissue/migration/migratable.rb +106 -8
  54. data/lib/catissue/migration/migrator.rb +20 -12
  55. data/lib/catissue/migration/shims.rb +3 -3
  56. data/lib/catissue/util/collectible.rb +2 -2
  57. data/lib/catissue/util/collectible_event_parameters.rb +2 -2
  58. data/lib/catissue/util/position.rb +3 -3
  59. data/lib/catissue/version.rb +1 -1
  60. data/test/lib/catissue/domain/address_test.rb +3 -2
  61. data/test/lib/catissue/domain/participant_test.rb +11 -0
  62. data/test/lib/catissue/domain/specimen_collection_group_test.rb +62 -12
  63. data/test/lib/catissue/domain/specimen_test.rb +0 -1
  64. data/test/lib/catissue/test_case.rb +2 -2
  65. data/test/lib/examples/galena/tissue/migration/seedify.rb +5 -5
  66. data/test/lib/examples/galena/tissue/migration/test_case.rb +9 -5
  67. metadata +8 -17
  68. data/conf/extract/simple_fields.yaml +0 -4
  69. data/conf/migration/filter_fields.yaml +0 -7
  70. data/conf/migration/filter_migration.yaml +0 -9
  71. data/conf/migration/frozen_fields.yaml +0 -11
  72. data/conf/migration/frozen_migration.yaml +0 -9
  73. data/conf/migration/general_fields.yaml +0 -44
  74. data/conf/migration/general_migration.yaml +0 -9
  75. data/conf/migration/simple_fields.yaml +0 -30
  76. data/conf/migration/simple_migration.yaml +0 -7
  77. data/conf/migration/small_fields.yaml +0 -24
  78. data/conf/migration/small_migration.yaml +0 -9
@@ -6,9 +6,6 @@ module CaTissue
6
6
  resource_import Java::edu.wustl.catissuecore.domain.CollectionProtocolRegistration
7
7
 
8
8
  # The CollectionProtocolRegistration domain class.
9
- #
10
- # @quirk caTissue Augment the standard CPR storable reference attributes to work around caTissue Bug #150:
11
- # Create CollectionProtocol in API ignores startDate.
12
9
  class CollectionProtocolRegistration
13
10
  # @quirk caTissue Bug #64: Some domain collection properties not initialized.
14
11
  # Initialize consent_tier_responses if necessary.
@@ -70,12 +67,15 @@ module CaTissue
70
67
  # must exist. This is checked in the special purpose {#validate_local} method.
71
68
  qualify_attribute(:protocol_participant_identifier, :optional)
72
69
 
70
+ # @quirk caTissue Augment the standard metadata storable reference attributes to work around caTissue Bug #150:
71
+ # Create CollectionProtocol in API ignores startDate.
73
72
  qualify_attribute(:registration_date, :update_only)
74
73
 
74
+ # @quirk caTissue Bug #64 - consent tier responses is is not initialized to an empty set
75
+ # in the Java constructor. Initialize it to a +LinkedHashSet+ in caRuby.
75
76
  def initialize
76
77
  super
77
- # following line works around an obscure problem whereby CPR init could not call consent_tier_responses below;
78
- # TODO - verify that it is still necessary
78
+ # @quirk JRuby consent_tier_responses property method is not accessible until respond_to? is called.
79
79
  respond_to?(:consent_tier_responses)
80
80
  # work around caTissue Bug #64
81
81
  self.consent_tier_responses ||= Java::JavaUtil::LinkedHashSet.new
@@ -9,10 +9,6 @@ module CaTissue
9
9
 
10
10
  # The +caTissue+ +Container+ domain class wrapper.
11
11
  # Each Container subclass is required to implement the {#container_type} method.
12
- #
13
- # @quirk caTissue container capacity was auto-generated in 1.1.2, but is not in 1.2.
14
- # @quirk caTissue Like SCG, the Container save argument name value is ignored and assigned by caTissue
15
- # to a different value instead. Therefore, this attribute is marked auto-generated.
16
12
  class Container
17
13
  include Storable
18
14
 
@@ -22,11 +18,14 @@ module CaTissue
22
18
 
23
19
  add_attribute_defaults(:activity_status => 'Active', :full => false)
24
20
 
21
+ # @quirk caTissue container capacity was auto-generated in 1.1.2, but is not in 1.2.
25
22
  add_dependent_attribute(:capacity)
26
23
 
27
24
  # located_at_position is cascaded but not fetched.
28
25
  add_dependent_attribute(:located_at_position, :unfetched)
29
26
 
27
+ # @quirk caTissue Like SCG, the Container save argument name value is ignored and assigned by caTissue
28
+ # to a different value instead. Therefore, this attribute is marked auto-generated.
30
29
  qualify_attribute(:name, :autogenerated)
31
30
 
32
31
  # Returns the meta-type which constrains this Container in its role as a {Storable}
@@ -5,7 +5,7 @@ module CaTissue
5
5
  resource_import Java::edu.wustl.catissuecore.domain.ContainerType
6
6
 
7
7
  # The caTissue ContainerType domain class wrapper.
8
- # Each subclass is required to implement the +container_class+ method.
8
+ # Each {ContainerType} subclass is required to implement the container_class method.
9
9
  #
10
10
  # @quirk caTissue the ContainerType and Container class hierarchy is a confusing
11
11
  # olio of entangled relationships. The canonical use case is as follows:
@@ -61,10 +61,7 @@ module CaTissue
61
61
  # needs to make to add a specimen box to a freezer is:
62
62
  # freezer << box
63
63
  # which places the box in the first available rack slot in the freezer, or:
64
- # box >> freezer
65
- #
66
- # @quirk caTissue although capacity is not marked cascaded in Hibernate, it is created when the
67
- # ContainerType is created.
64
+ # box >> freezer
68
65
  class ContainerType
69
66
  add_attribute_aliases(:column_label => :oneDimensionLabel, :row_label => :twoDimensionLabel)
70
67
 
@@ -74,9 +71,11 @@ module CaTissue
74
71
 
75
72
  add_mandatory_attributes(:activity_status, :capacity, :one_dimension_label, :two_dimension_label)
76
73
 
74
+ # @quirk caTissue although capacity is not marked cascaded in Hibernate, it is created when the
75
+ # ContainerType is created.
77
76
  add_dependent_attribute(:capacity)
78
77
 
79
- # Override default +CaRuby::Resource.merge_attributes+ to support the Capacity :rows and :columns
78
+ # Override default {CaRuby::Resource#merge_attributes} to support the Capacity :rows and :columns
80
79
  # pseudo-attributes.
81
80
  #
82
81
  # @quirk JRuby Subclasses do not pick up this class's Resource method overrides.
@@ -84,13 +83,13 @@ module CaTissue
84
83
  # not pick up ContainerType Resource overrides. Work-around is that each ContainerType
85
84
  # subclass must alias +merge_attributes+ to this method.
86
85
  #
87
- # @param (see CaRuby::Resource#merge_attributes)
86
+ # @param (see #merge_attributes)
88
87
  def merge_attributes(other, attributes=nil)
89
88
  if Hash === other then
90
89
  # partition the other hash into the Capacity attributes and ContainerType attributes
91
- cp_hash, ct_hash = other.partition { |key, value| key == :rows or key == :columns }
92
- self.capacity ||= CaTissue::Capacity.new(cp_hash).add_defaults unless cp_hash.empty?
93
- super(ct_hash, attributes)
90
+ cph, cth = other.split { |key, value| key == :rows or key == :columns }
91
+ self.capacity ||= CaTissue::Capacity.new(cph).add_defaults unless cph.empty?
92
+ super(cth, attributes)
94
93
  else
95
94
  super(other, attributes)
96
95
  end
@@ -134,8 +133,8 @@ module CaTissue
134
133
  private
135
134
 
136
135
  # Adds an empty capacity and default dimension labels, if necessary.
137
- # The default {#one_dimension_label} is 'Column' if there is a non-zero dimension capacity, 'Unused' otherwise.
138
- # The default {#two_dimension_label} is 'Row' if there is a non-zero dimension capacity, 'Unused' otherwise.
136
+ # The default +one_dimension_label+ is 'Column' if there is a non-zero dimension capacity, 'Unused' otherwise.
137
+ # The default +two_dimension_label+ is 'Row' if there is a non-zero dimension capacity, 'Unused' otherwise.
139
138
  #
140
139
  # @quirk JRuby See {#merge_container_type_attributes}. Work-around is that each ContainerType
141
140
  # subclass must alias +add_defaults_local+ to this method.
@@ -2,10 +2,10 @@ module CaTissue
2
2
  # import the Java class
3
3
  resource_import Java::edu.wustl.catissuecore.domain.DisposalEventParameters
4
4
 
5
- # @quirk caTissue DisposalEventParameters activity status is transient.
6
5
  class DisposalEventParameters < CaTissue::SpecimenEventParameters
7
6
  add_attribute_defaults(:activity_status => 'Closed')
8
7
 
8
+ # @quirk caTissue DisposalEventParameters activity status is transient.
9
9
  qualify_attribute(:activity_status, :unfetched)
10
10
  end
11
11
  end
@@ -6,23 +6,24 @@ module CaTissue
6
6
 
7
7
  # The NewSpecimenArrayOrderItem domain class.
8
8
  class NewSpecimenArrayOrderItem
9
- # @quirk caTissue Bug #64: Some domain collection properties not initialized.
10
- # Initialize order_items if necessary.
9
+ # @quirk caTissue Bug #64: order items collection property is not initialized to an empty set
10
+ # in the Java constructor. Initialize it to a +LinkedHashSet+ in caRuby.
11
11
  #
12
12
  # @return [Java::JavaUtil::Set] the items
13
13
  def order_items
14
14
  getOrderItemCollection or (self.order_items = Java::JavaUtil::LinkedHashSet.new)
15
15
  end
16
16
 
17
- # @quirk caTissue Bug #64: Some domain collection properties not initialized.
18
- # Initialize distributions if necessary.
17
+ # @quirk caTissue Bug #64: distributions collection property is not initialized to an empty set
18
+ # in the Java constructor. Initialize it to a +LinkedHashSet+ in caRuby.
19
19
  def distributions
20
20
  getDistributionCollection or (self.distributions = Java::JavaUtil::LinkedHashSet.new)
21
21
  end
22
22
 
23
23
  def initialize
24
24
  super
25
- # jRuby bug? - Java methods not acceesible until respond_to? called; TODO - reconfirm this
25
+ # @quirk JRuby order_items and distributions property methods are not accessible until
26
+ # respond_to? is called.
26
27
  respond_to?(:order_items)
27
28
  respond_to?(:distributions)
28
29
  # work around caTissue Bug #64
@@ -13,9 +13,13 @@ module CaTissue
13
13
  getOrderItemCollection or (self.order_items = Java::JavaUtil::LinkedHashSet.new)
14
14
  end
15
15
 
16
+ # @quirk caTissue Bug #64 - consent tier responses is not initialized to an empty set
17
+ # in the Java constructor. Initialize it to a +LinkedHashSet+ in caRuby.
16
18
  def initialize
17
19
  super
20
+ # @quirk JRuby order_items property method isnot accessible until respond_to? is called.
18
21
  respond_to?(:order_items)
22
+ # @quirk caTissue work around caTissue Bug #64
19
23
  self.order_items ||= Java::JavaUtil::LinkedHashSet.new
20
24
  end
21
25
  end
@@ -7,18 +7,6 @@ module CaTissue
7
7
  resource_import Java::edu.wustl.catissuecore.domain.Participant
8
8
 
9
9
  # The Participant domain class.
10
- #
11
- # @quirk caTissue clinical study is unsupported by 1.1.x caTissue, removed in 1.2.
12
- # @quirk caTissue Bug #154: Participant gender is specified by caTissue as optional, but if it is not set then
13
- # it appears as Female in the GUI even though it is null in the database.
14
- # @quirk caTissue Participant CPR cascade is simulated in the bizlogic.
15
- # See the PMI comment below.
16
- # @quirk caTissue Participant PMI is fetched but not cascaded. However, the Participant bizlogic
17
- # simulates PMI cascade. The bizlogic doesn't document why this is done, but it appears that the
18
- # reason is to inject an empty PMI if necessary in order to work around a caTissue query bug
19
- # (see merge_attribute comment). At any rate, mark PMI as cascaded in the caRuby metadata
20
- # to reflect the bizlogic simulation. However, this designation should be revisited with each
21
- # release, since if the bizlogic hack is removed then caRuby Participant PMI save will break.
22
10
  class Participant
23
11
  include Person
24
12
 
@@ -26,27 +14,39 @@ module CaTissue
26
14
  # which is reflected in the saved Java property name subfields.
27
15
  add_attribute(:name, CaRuby::Person::Name)
28
16
 
29
- remove_attribute(:clinical_study_registrations) if attribute_defined?(:clinical_study_registrations)
17
+ # @quirk caTissue clinical study is unsupported by 1.1.x caTissue, removed in 1.2.
18
+ if attribute_defined?(:clinical_study_registrations) then remove_attribute(:clinical_study_registrations) end
30
19
 
31
20
  add_attribute_aliases(:collection_registrations => :collection_protocol_registrations,
32
- :registrations => :collection_protocol_registrations,
33
- :medical_identifiers => :participant_medical_identifiers)
21
+ :registrations => :collection_protocol_registrations,
22
+ :medical_identifiers => :participant_medical_identifiers)
34
23
 
35
24
  set_secondary_key_attributes(:social_security_number)
36
25
 
37
26
  # Clarification on defaults:
38
27
  # * 'Unknown': value is unknown by anybody
39
28
  # * 'Unspecified': value is known by somebody, but the data was not communicated to the bank
40
- # cf. https://cabig-kc.nci.nih.gov/Biospecimen/forums/viewtopic.php?f=16&t=672&p=2343&e=2343
29
+ #
30
+ # Cf. https://cabig-kc.nci.nih.gov/Biospecimen/forums/viewtopic.php?f=16&t=672&p=2343&e=2343
41
31
  add_attribute_defaults(:activity_status => 'Active', :ethnicity => 'Unknown', :gender => 'Unspecified',
42
32
  :sex_genotype => 'Unknown', :vital_status => 'Unknown')
43
33
 
34
+ # @quirk caTissue Bug #154: Participant gender is specified by caTissue as optional, but if it is not set then
35
+ # it appears as Female in the GUI even though it is null in the database.
44
36
  add_mandatory_attributes(:activity_status, :gender)
45
37
 
38
+ # @quirk caTissue Participant CPR cascade is simulated in the bizlogic.
39
+ # See the PMI comment below.
46
40
  add_dependent_attribute(:collection_protocol_registrations)
47
41
 
48
42
  add_dependent_attribute(:races)
49
43
 
44
+ # @quirk caTissue Participant PMI is fetched but not cascaded. However, the Participant bizlogic
45
+ # simulates PMI cascade. The bizlogic doesn't document why this is done, but it appears that the
46
+ # reason is to inject an empty PMI if necessary in order to work around a caTissue query bug
47
+ # (see merge_attribute comment). At any rate, mark PMI as cascaded in the caRuby metadata
48
+ # to reflect the bizlogic simulation. However, this designation should be revisited with each
49
+ # release, since if the bizlogic hack is removed then caRuby Participant PMI save will break.
50
50
  add_dependent_attribute(:participant_medical_identifiers)
51
51
 
52
52
  # SSN is a key, if present, but is not required.
@@ -57,7 +57,7 @@ module CaTissue
57
57
 
58
58
  # The clinicial annotation.
59
59
  add_annotation('Clinical', :package => 'clinical_annotation', :service => 'CA')
60
-
60
+
61
61
  # @quirk caTissue remove the autogenerated blank PMI.
62
62
  # cf. https://cabig-kc.nci.nih.gov/Biospecimen/forums/viewtopic.php?f=19&t=436&sid=ef98f502fc0ab242781b7759a0eaff36
63
63
  def merge_attribute(attribute, newval, matches=nil)
@@ -6,9 +6,6 @@ module CaTissue
6
6
 
7
7
 
8
8
  # The ParticipantMedicalIdentifier domain class.
9
- #
10
- # @quirk caTissue 1.2 PMI method signature is corrupted. Work-around is to explicitly set the attribute type.
11
- # Cf. https://cabig-kc.nci.nih.gov/Biospecimen/forums/viewtopic.php?f=19&t=984&sid=773ad8f0bbbfc6e9c9b45ec1bf43a6e9.
12
9
  class ParticipantMedicalIdentifier
13
10
  # Sets this ParticipantMedicalIdentifier's medical record number to the given value.
14
11
  # A Numeric value is converted to a String.
@@ -17,6 +14,8 @@ module CaTissue
17
14
  setMedicalRecordNumber(value)
18
15
  end
19
16
 
17
+ # @quirk caTissue 1.2 PMI method signature is corrupted. Work-around is to explicitly set the attribute type.
18
+ # Cf. https://cabig-kc.nci.nih.gov/Biospecimen/forums/viewtopic.php?f=19&t=984&sid=773ad8f0bbbfc6e9c9b45ec1bf43a6e9.
20
19
  set_attribute_type(:site, CaTissue::Site)
21
20
 
22
21
  set_secondary_key_attributes(:site, :medical_record_number)
@@ -3,18 +3,16 @@ module CaTissue
3
3
  resource_import Java::edu.wustl.catissuecore.domain.Site
4
4
 
5
5
  # The Site domain class.
6
- #
7
- # @quirk caTissue caTissue 1.2 Site has a facility_id Java property, but caTissue throws an
8
- # UnsupportedOperationException if they are called.
9
- #
10
- # @quirk caTissue the Site SCG collection is ignored, since it is not fetched with the Site,
11
- # the caCORE query builder doesn't support abstract types, and even if it worked it would
12
- # have limited value but high fetch cost. The work-around, which is also the more natural
13
- # mechanism, is to query on a concrete SCG subclass template which references the target Site.
14
6
  class Site
7
+ # @quirk caTissue the Site SCG collection is ignored, since it is not fetched with the Site,
8
+ # the caCORE query builder doesn't support abstract types, and even if it worked it would
9
+ # have limited value but high fetch cost. The work-around, which is also the more natural
10
+ # mechanism, is to query on a concrete SCG subclass template which references the target Site.
15
11
  remove_attribute(:abstract_specimen_collection_groups)
16
12
 
17
- remove_attribute(:facility_id) if attribute_defined?(:facility_id)
13
+ # @quirk caTissue caTissue 1.2 Site has a facility_id Java property, but caTissue throws an
14
+ # UnsupportedOperationException if they are called.
15
+ if attribute_defined?(:facility_id) then remove_attribute(:facility_id) end
18
16
 
19
17
  set_secondary_key_attributes(:name)
20
18
 
@@ -1,6 +1,8 @@
1
1
  module CaTissue
2
2
  class Specimen
3
3
  class Pathology
4
+ # @quirk caTissue The 1.1 class GleasonScore is renamed to ProstateSpecimenGleasonScore in 1.2.
5
+ # Alias the Ruby class constant for forward and backaward compatibility.
4
6
  begin
5
7
  resource_import Java::pathology_specimen.ProstateSpecimenGleasonScore
6
8
  const_set(:GleasonScore, ProstateSpecimenGleasonScore)
@@ -11,9 +13,6 @@ module CaTissue
11
13
  const_set(:ProstateSpecimenGleasonScore, GleasonScore)
12
14
  logger.debug { "Aliased the caTissue 1.1 Specimen pathology annotation class GleasonScore class to the renamed 1.2 ProstateSpecimenGleasonScore." }
13
15
  end
14
- # @quirk caTissue The 1.1 class GleasonScore is renamed to ProstateSpecimenGleasonScore in 1.2.
15
- # Alias the Ruby class constant for forward and backaward compatibility.
16
- class ProstateSpecimenGleasonScore; end
17
16
  end
18
17
  end
19
18
  end
@@ -3,10 +3,11 @@ module CaTissue
3
3
  class Pathology
4
4
  begin
5
5
  resource_import Java::pathology_specimen.ProstateSpecimenPathologyAnnotation
6
-
7
- # @quirk caTissue the Specimen prostate annotation 1.1 method gleasonScore is renamed to
8
- # prostateSpecimenGleasonScore in 1.2. Alias the JRuby wrapper method for backward compatibility.
6
+ const_set(:ProstatePathologyAnnotation, ProstateSpecimenPathologyAnnotation)
7
+ logger.debug { "Aliased the Specimen pathology annotation class ProstateSpecimenPathologyAnnotation to ProstatePathologyAnnotation." }
9
8
  class ProstateSpecimenPathologyAnnotation
9
+ # @quirk caTissue the Specimen prostate annotation 1.1 method gleasonScore is renamed to
10
+ # prostateSpecimenGleasonScore in 1.2. Alias the JRuby wrapper method for backward compatibility.
10
11
  if attribute_defined?(:prostate_specimen_gleason_score) then
11
12
  add_attribute_aliases(:gleason_score => :prostate_specimen_gleason_score)
12
13
  else
@@ -1,5 +1,10 @@
1
1
  module CaTissue
2
2
  class Specimen
3
+ # @quirk caTissue The 1.1 class AdditionalFinding is renamed to SpecimenAdditionalFinding in 1.2.
4
+ # Alias the Ruby class constant for forward and backaward compatibility.
5
+ #
6
+ # @quirk caTissue the Specimen additional finding annotation 1.1 method 'details' is renamed to
7
+ # 'specimenDetails' in 1.2.
3
8
  class Pathology
4
9
  begin
5
10
  resource_import Java::pathology_specimen.SpecimenAdditionalFinding
@@ -11,13 +16,6 @@ module CaTissue
11
16
  const_set(:SpecimenAdditionalFinding, AdditionalFinding)
12
17
  logger.debug { "Aliased the caTissue 1.1 Specimen pathology annotation class AdditionalFinding class to the renamed 1.2 SpecimenAdditionalFinding." }
13
18
  end
14
-
15
- # @quirk caTissue The 1.1 class AdditionalFinding is renamed to SpecimenAdditionalFinding in 1.2.
16
- # Alias the Ruby class constant for forward and backaward compatibility.
17
- #
18
- # @quirk caTissue the Specimen additional finding annotation 1.1 method 'details' is renamed to
19
- # 'specimenDetails' in 1.2.
20
- class SpecimenAdditionalFinding; end
21
19
  end
22
20
  end
23
21
  end
@@ -4,6 +4,9 @@ require File.join(File.dirname(__FILE__), 'specimen_histologic_type')
4
4
  module CaTissue
5
5
  class Specimen
6
6
  class Pathology
7
+ # @quirk caTissue The 1.1 specimen pathology annotation class BaseSolidTissuePathologyAnnotation
8
+ # is renamed to SpecimenBaseSolidTissuePathologyAnnotation in 1.2.
9
+ # Alias the Ruby class constant for forward and backaward compatibility.
7
10
  begin
8
11
  resource_import Java::pathology_specimen.SpecimenBaseSolidTissuePathologyAnnotation
9
12
  const_set(:BaseSolidTissuePathologyAnnotation, SpecimenBaseSolidTissuePathologyAnnotation)
@@ -15,21 +18,18 @@ module CaTissue
15
18
  logger.debug { "Aliased the caTissue 1.1 Specimen pathology annotation class BaseSolidTissuePathologyAnnotation class to the renamed 1.2 SpecimenBaseSolidTissuePathologyAnnotation." }
16
19
  end
17
20
 
18
- # @quirk caTissue The 1.1 specimen pathology annotation class BaseSolidTissuePathologyAnnotation
19
- # is renamed to SpecimenBaseSolidTissuePathologyAnnotation in 1.2.
20
- # Alias the Ruby class constant for forward and backaward compatibility.
21
- # @quirk caTissue The SpecimenBaseSolidTissuePathologyAnnotation => SpecimenHistologicGrade collection
22
- # property is misnamed as histologicGrade rather than histologicGradeCollection. This misnaming
23
- # prevents caRuby from inferring the attribute domain type and inverse. Work-around is to set
24
- # these attribute features manually.
25
- # @quirk caTissue The SpecimenBaseSolidTissuePathologyAnnotation => SpecimenHistologicType collection
26
- # property is misnamed as histologicType rather than histologicTypeCollection. This misnaming
27
- # prevents caRuby from inferring the attribute domain type and inverse. Work-around is to set
28
- # these attribute features manually.
29
21
  class SpecimenBaseSolidTissuePathologyAnnotation
22
+ # @quirk caTissue The SpecimenBaseSolidTissuePathologyAnnotation => SpecimenHistologicGrade collection
23
+ # property is misnamed as histologicGrade rather than histologicGradeCollection. This misnaming
24
+ # prevents caRuby from inferring the attribute domain type and inverse. Work-around is to set
25
+ # these attribute features manually.
30
26
  set_attribute_type(:histologic_grade, CaTissue::Specimen::Pathology::SpecimenHistologicGrade)
31
27
  set_attribute_inverse(:histologic_grade, :specimen_base_solid_tissue_pathology_annotation)
32
28
 
29
+ # @quirk caTissue The SpecimenBaseSolidTissuePathologyAnnotation => SpecimenHistologicType collection
30
+ # property is misnamed as histologicType rather than histologicTypeCollection. This misnaming
31
+ # prevents caRuby from inferring the attribute domain type and inverse. Work-around is to set
32
+ # these attribute features manually.
33
33
  set_attribute_type(:histologic_type, CaTissue::Specimen::Pathology::SpecimenHistologicType)
34
34
  set_attribute_inverse(:histologic_type, :specimen_base_solid_tissue_pathology_annotation)
35
35
  end
@@ -1,6 +1,8 @@
1
1
  module CaTissue
2
2
  class Specimen
3
3
  class Pathology
4
+ # @quirk caTissue The 1.1 class Details is renamed to SpecimenDetails in 1.2.
5
+ # Alias the Ruby class constant for forward and backaward compatibility.
4
6
  begin
5
7
  resource_import Java::pathology_specimen.SpecimenDetails
6
8
  const_set(:Details, SpecimenDetails)
@@ -11,10 +13,6 @@ module CaTissue
11
13
  const_set(:SpecimenDetails, Details)
12
14
  logger.debug { "Aliased the caTissue 1.1 Specimen pathology annotation class Details class to the renamed 1.2 SpecimenDetails." }
13
15
  end
14
-
15
- # @quirk caTissue The 1.1 class Details is renamed to SpecimenDetails in 1.2.
16
- # Alias the Ruby class constant for forward and backaward compatibility.
17
- class SpecimenDetails; end
18
16
  end
19
17
  end
20
18
  end
@@ -1,6 +1,8 @@
1
1
  module CaTissue
2
2
  class Specimen
3
3
  class Pathology
4
+ # @quirk caTissue The 1.1 class HistologicGrade is renamed to SpecimenHistologicGrade in 1.2.
5
+ # Alias the Ruby class constant for forward and backaward compatibility.
4
6
  begin
5
7
  resource_import Java::pathology_specimen.SpecimenHistologicGrade
6
8
  const_set(:HistologicGrade, SpecimenHistologicGrade)
@@ -11,10 +13,6 @@ module CaTissue
11
13
  const_set(:SpecimenHistologicGrade, HistologicGrade)
12
14
  logger.debug { "Aliased the caTissue 1.1 Specimen pathology annotation class HistologicGrade class to the renamed 1.2 SpecimenHistologicGrade." }
13
15
  end
14
-
15
- # @quirk caTissue The 1.1 class HistologicGrade is renamed to SpecimenHistologicGrade in 1.2.
16
- # Alias the Ruby class constant for forward and backaward compatibility.
17
- class SpecimenHistologicGrade; end
18
16
  end
19
17
  end
20
18
  end
@@ -3,6 +3,8 @@ require File.join(File.dirname(__FILE__), 'specimen_histologic_variant_type')
3
3
  module CaTissue
4
4
  class Specimen
5
5
  class Pathology
6
+ # @quirk caTissue The 1.1 class HistologicType is renamed to SpecimenHistologicType in 1.2.
7
+ # Alias the Ruby class constant for forward and backaward compatibility.
6
8
  begin
7
9
  resource_import Java::pathology_specimen.SpecimenHistologicType
8
10
  const_set(:HistologicType, SpecimenHistologicType)
@@ -14,13 +16,11 @@ module CaTissue
14
16
  logger.debug { "Aliased the caTissue 1.1 Specimen pathology annotation class HistologicType class to the renamed 1.2 SpecimenHistologicType." }
15
17
  end
16
18
 
17
- # @quirk caTissue The 1.1 class HistologicType is renamed to SpecimenHistologicType in 1.2.
18
- # Alias the Ruby class constant for forward and backaward compatibility.
19
- # @quirk caTissue The SpecimenHistologicType => SpecimenHistologicVariantType collection
20
- # property is misnamed as histologicVariantType rather than histologicVariantTypeCollection.
21
- # This misnaming prevents caRuby from inferring the attribute domain type and inverse.
22
- # Work-around is to set these attribute features manually.
23
19
  class SpecimenHistologicType
20
+ # @quirk caTissue The SpecimenHistologicType => SpecimenHistologicVariantType collection
21
+ # property is misnamed as histologicVariantType rather than histologicVariantTypeCollection.
22
+ # This misnaming prevents caRuby from inferring the attribute domain type and inverse.
23
+ # Work-around is to set these attribute features manually.
24
24
  set_attribute_type(:histologic_variant_type, CaTissue::Specimen::Pathology::SpecimenHistologicVariantType)
25
25
  set_attribute_inverse(:histologic_variant_type, :histologic_type)
26
26
  end