openagent 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (221) hide show
  1. data/README.md +64 -0
  2. data/lib/openagent.rb +4 -0
  3. data/lib/openagent/agent.rb +24 -0
  4. data/lib/openagent/client.rb +170 -0
  5. data/lib/openagent/errors.rb +30 -0
  6. data/lib/openagent/message_builder.rb +171 -0
  7. data/lib/openagent/ssl_config.rb +26 -0
  8. data/lib/openagent/version.rb +3 -0
  9. data/lib/openagent/xml_helpers.rb +24 -0
  10. data/lib/openagent/zone.rb +58 -0
  11. data/lib/sif/infra/common/application.rb +13 -0
  12. data/lib/sif/infra/common/condition.rb +13 -0
  13. data/lib/sif/infra/common/condition_group.rb +14 -0
  14. data/lib/sif/infra/common/data.rb +11 -0
  15. data/lib/sif/infra/common/error.rb +14 -0
  16. data/lib/sif/infra/common/event.rb +0 -0
  17. data/lib/sif/infra/common/event_object.rb +12 -0
  18. data/lib/sif/infra/common/extended_query.rb +15 -0
  19. data/lib/sif/infra/common/extended_query_results.rb +12 -0
  20. data/lib/sif/infra/common/header.rb +27 -0
  21. data/lib/sif/infra/common/message.rb +49 -0
  22. data/lib/sif/infra/common/object.rb +11 -0
  23. data/lib/sif/infra/common/object_data.rb +46 -0
  24. data/lib/sif/infra/common/other_id.rb +12 -0
  25. data/lib/sif/infra/common/property.rb +12 -0
  26. data/lib/sif/infra/common/protocol.rb +16 -0
  27. data/lib/sif/infra/common/provision.rb +17 -0
  28. data/lib/sif/infra/common/query.rb +16 -0
  29. data/lib/sif/infra/common/query_object.rb +12 -0
  30. data/lib/sif/infra/common/secure_channel.rb +12 -0
  31. data/lib/sif/infra/common/security.rb +13 -0
  32. data/lib/sif/infra/common/status.rb +16 -0
  33. data/lib/sif/infra/common/unprovision.rb +9 -0
  34. data/lib/sif/infra/common/vendor.rb +13 -0
  35. data/lib/sif/infra/messages/ack.rb +16 -0
  36. data/lib/sif/infra/messages/event.rb +12 -0
  37. data/lib/sif/infra/messages/get_agent_acl.rb +11 -0
  38. data/lib/sif/infra/messages/get_message.rb +11 -0
  39. data/lib/sif/infra/messages/get_zone_status.rb +10 -0
  40. data/lib/sif/infra/messages/ping.rb +10 -0
  41. data/lib/sif/infra/messages/provide.rb +16 -0
  42. data/lib/sif/infra/messages/provision.rb +18 -0
  43. data/lib/sif/infra/messages/register.rb +21 -0
  44. data/lib/sif/infra/messages/request.rb +16 -0
  45. data/lib/sif/infra/messages/responder.rb +9 -0
  46. data/lib/sif/infra/messages/response.rb +18 -0
  47. data/lib/sif/infra/messages/sleep.rb +11 -0
  48. data/lib/sif/infra/messages/subscribe.rb +12 -0
  49. data/lib/sif/infra/messages/system_control.rb +15 -0
  50. data/lib/sif/infra/messages/system_control_data.rb +39 -0
  51. data/lib/sif/infra/messages/unprovide.rb +12 -0
  52. data/lib/sif/infra/messages/unregister.rb +11 -0
  53. data/lib/sif/infra/messages/unsubscribe.rb +12 -0
  54. data/lib/sif/infra/messages/wakeup.rb +11 -0
  55. data/lib/sif/infra/messages/zone_status_role.rb +12 -0
  56. data/lib/sif/infra/objects/agent_acl.rb +19 -0
  57. data/lib/sif/infra/objects/zone_status.rb +30 -0
  58. data/lib/sif/models/common/address.rb +21 -0
  59. data/lib/sif/models/common/alert_message.rb +12 -0
  60. data/lib/sif/models/common/base_name.rb +12 -0
  61. data/lib/sif/models/common/calendar_summary.rb +28 -0
  62. data/lib/sif/models/common/code.rb +12 -0
  63. data/lib/sif/models/common/contact_info.rb +21 -0
  64. data/lib/sif/models/common/credits_attempted.rb +12 -0
  65. data/lib/sif/models/common/demographics.rb +31 -0
  66. data/lib/sif/models/common/dwelling_arrangement.rb +14 -0
  67. data/lib/sif/models/common/earned_status.rb +15 -0
  68. data/lib/sif/models/common/electronic_id.rb +12 -0
  69. data/lib/sif/models/common/email.rb +13 -0
  70. data/lib/sif/models/common/english_proficiency.rb +14 -0
  71. data/lib/sif/models/common/exceptionality_category.rb +13 -0
  72. data/lib/sif/models/common/grade_level.rb +12 -0
  73. data/lib/sif/models/common/grid_location.rb +12 -0
  74. data/lib/sif/models/common/identification_info.rb +12 -0
  75. data/lib/sif/models/common/language.rb +14 -0
  76. data/lib/sif/models/common/meal_status.rb +16 -0
  77. data/lib/sif/models/common/medical_alert_message.rb +12 -0
  78. data/lib/sif/models/common/meeting_time.rb +12 -0
  79. data/lib/sif/models/common/name.rb +19 -0
  80. data/lib/sif/models/common/other_code.rb +12 -0
  81. data/lib/sif/models/common/other_id.rb +12 -0
  82. data/lib/sif/models/common/phone_number.rb +15 -0
  83. data/lib/sif/models/common/principal_info.rb +12 -0
  84. data/lib/sif/models/common/race.rb +15 -0
  85. data/lib/sif/models/common/sced_code.rb +15 -0
  86. data/lib/sif/models/common/schedule_info.rb +14 -0
  87. data/lib/sif/models/common/schedule_info_override.rb +13 -0
  88. data/lib/sif/models/common/school_contact.rb +13 -0
  89. data/lib/sif/models/common/school_course_info_override.rb +18 -0
  90. data/lib/sif/models/common/street.rb +22 -0
  91. data/lib/sif/models/common/subject_area.rb +13 -0
  92. data/lib/sif/models/groups/data_model/term_span.rb +14 -0
  93. data/lib/sif/models/groups/sis/attendance_code_info.rb +23 -0
  94. data/lib/sif/models/groups/sis/calendar_date.rb +25 -0
  95. data/lib/sif/models/groups/sis/discipline_incident.rb +31 -0
  96. data/lib/sif/models/groups/sis/lea_info.rb +28 -0
  97. data/lib/sif/models/groups/sis/personal_representer.rb +22 -0
  98. data/lib/sif/models/groups/sis/school_course_info.rb +30 -0
  99. data/lib/sif/models/groups/sis/school_info.rb +32 -0
  100. data/lib/sif/models/groups/sis/section_info.rb +26 -0
  101. data/lib/sif/models/groups/sis/sis_representer.rb +15 -0
  102. data/lib/sif/models/groups/sis/staff_personal.rb +20 -0
  103. data/lib/sif/models/groups/sis/student_personal.rb +37 -0
  104. data/lib/sif/models/groups/sis/student_section_enrollment.rb +21 -0
  105. data/lib/sif/models/groups/sis/term_info.rb +29 -0
  106. data/lib/sif/representations/infra/common/application.rb +16 -0
  107. data/lib/sif/representations/infra/common/condition.rb +16 -0
  108. data/lib/sif/representations/infra/common/condition_group.rb +18 -0
  109. data/lib/sif/representations/infra/common/data.rb +17 -0
  110. data/lib/sif/representations/infra/common/error.rb +17 -0
  111. data/lib/sif/representations/infra/common/event.rb +0 -0
  112. data/lib/sif/representations/infra/common/event_object.rb +15 -0
  113. data/lib/sif/representations/infra/common/extended_query.rb +18 -0
  114. data/lib/sif/representations/infra/common/extended_query_results.rb +15 -0
  115. data/lib/sif/representations/infra/common/header.rb +23 -0
  116. data/lib/sif/representations/infra/common/message.rb +54 -0
  117. data/lib/sif/representations/infra/common/object.rb +14 -0
  118. data/lib/sif/representations/infra/common/object_data.rb +43 -0
  119. data/lib/sif/representations/infra/common/other_id.rb +15 -0
  120. data/lib/sif/representations/infra/common/property.rb +15 -0
  121. data/lib/sif/representations/infra/common/protocol.rb +22 -0
  122. data/lib/sif/representations/infra/common/provision.rb +38 -0
  123. data/lib/sif/representations/infra/common/query.rb +24 -0
  124. data/lib/sif/representations/infra/common/query_object.rb +15 -0
  125. data/lib/sif/representations/infra/common/secure_channel.rb +15 -0
  126. data/lib/sif/representations/infra/common/security.rb +18 -0
  127. data/lib/sif/representations/infra/common/status.rb +18 -0
  128. data/lib/sif/representations/infra/messages/ack.rb +25 -0
  129. data/lib/sif/representations/infra/messages/event.rb +19 -0
  130. data/lib/sif/representations/infra/messages/get_message.rb +12 -0
  131. data/lib/sif/representations/infra/messages/ping.rb +13 -0
  132. data/lib/sif/representations/infra/messages/provide.rb +19 -0
  133. data/lib/sif/representations/infra/messages/provision.rb +37 -0
  134. data/lib/sif/representations/infra/messages/register.rb +30 -0
  135. data/lib/sif/representations/infra/messages/request.rb +24 -0
  136. data/lib/sif/representations/infra/messages/response.rb +29 -0
  137. data/lib/sif/representations/infra/messages/sleep.rb +14 -0
  138. data/lib/sif/representations/infra/messages/subscribe.rb +19 -0
  139. data/lib/sif/representations/infra/messages/system_control.rb +23 -0
  140. data/lib/sif/representations/infra/messages/system_control_data.rb +31 -0
  141. data/lib/sif/representations/infra/messages/wakeup.rb +14 -0
  142. data/lib/sif/representations/models/common/address.rb +24 -0
  143. data/lib/sif/representations/models/common/alert_message.rb +16 -0
  144. data/lib/sif/representations/models/common/contact_info.rb +28 -0
  145. data/lib/sif/representations/models/common/credits_attempted.rb +15 -0
  146. data/lib/sif/representations/models/common/demographics.rb +43 -0
  147. data/lib/sif/representations/models/common/dwelling_arrangement.rb +18 -0
  148. data/lib/sif/representations/models/common/electronic_id.rb +16 -0
  149. data/lib/sif/representations/models/common/email.rb +16 -0
  150. data/lib/sif/representations/models/common/english_proficiency.rb +17 -0
  151. data/lib/sif/representations/models/common/identification_info.rb +16 -0
  152. data/lib/sif/representations/models/common/language.rb +19 -0
  153. data/lib/sif/representations/models/common/medical_alert_message.rb +15 -0
  154. data/lib/sif/representations/models/common/meeting_time.rb +16 -0
  155. data/lib/sif/representations/models/common/name.rb +22 -0
  156. data/lib/sif/representations/models/common/other_code.rb +15 -0
  157. data/lib/sif/representations/models/common/other_id.rb +15 -0
  158. data/lib/sif/representations/models/common/phone_number.rb +18 -0
  159. data/lib/sif/representations/models/common/principal_info.rb +15 -0
  160. data/lib/sif/representations/models/common/race.rb +18 -0
  161. data/lib/sif/representations/models/common/sced_code.rb +18 -0
  162. data/lib/sif/representations/models/common/schedule_info.rb +19 -0
  163. data/lib/sif/representations/models/common/schedule_info_override.rb +18 -0
  164. data/lib/sif/representations/models/common/school_contact.rb +17 -0
  165. data/lib/sif/representations/models/common/school_course_info_override.rb +21 -0
  166. data/lib/sif/representations/models/common/street.rb +26 -0
  167. data/lib/sif/representations/models/common/subject_area.rb +17 -0
  168. data/lib/sif/representations/models/groups/data_model/term_span.rb +20 -0
  169. data/lib/sif/representations/models/groups/sis/personal_representer.rb +38 -0
  170. data/lib/sif/representations/models/groups/sis/school_course_info.rb +36 -0
  171. data/lib/sif/representations/models/groups/sis/school_info.rb +47 -0
  172. data/lib/sif/representations/models/groups/sis/section_info.rb +29 -0
  173. data/lib/sif/representations/models/groups/sis/sis_representer.rb +17 -0
  174. data/lib/sif/representations/models/groups/sis/staff_personal.rb +19 -0
  175. data/lib/sif/representations/models/groups/sis/student_personal.rb +37 -0
  176. data/lib/sif/representations/models/groups/sis/student_section_enrollment.rb +26 -0
  177. data/lib/sif/representations/models/groups/sis/term_info.rb +30 -0
  178. data/lib/sif/sif.rb +249 -0
  179. data/openagent.gemspec +33 -0
  180. data/spec/agent_spec.rb +32 -0
  181. data/spec/client_spec.rb +96 -0
  182. data/spec/fixtures/agent.yaml +31 -0
  183. data/spec/fixtures/messages/event.xml +72 -0
  184. data/spec/fixtures/messages/response.xml +107 -0
  185. data/spec/fixtures/sif/attendance_code_info.xml +9 -0
  186. data/spec/fixtures/sif/calendar_date.xml +22 -0
  187. data/spec/fixtures/sif/calendar_summary.xml +21 -0
  188. data/spec/fixtures/sif/demographics.xml +33 -0
  189. data/spec/fixtures/sif/discipline_incident.xml +70 -0
  190. data/spec/fixtures/sif/lea_info.xml +55 -0
  191. data/spec/fixtures/sif/section_info.xml +1536 -0
  192. data/spec/fixtures/sif/sif_header.xml +12 -0
  193. data/spec/fixtures/sif/sif_message__response.xml +107 -0
  194. data/spec/fixtures/sif/sif_object_data.xml +5 -0
  195. data/spec/fixtures/sif/sif_protocol.xml +3 -0
  196. data/spec/fixtures/sif/sif_protocol__properties.xml +10 -0
  197. data/spec/fixtures/sif/sif_provide.xml +9 -0
  198. data/spec/fixtures/sif/sif_provision.xml +33 -0
  199. data/spec/fixtures/sif/sif_register.xml +20 -0
  200. data/spec/fixtures/sif/sif_request.xml +21 -0
  201. data/spec/fixtures/sif/sif_response.xml +19 -0
  202. data/spec/fixtures/sif/sif_system_control.xml +10 -0
  203. data/spec/fixtures/sif/stu_pers_resp.xml +2 -0
  204. data/spec/fixtures/sif/student_personal.xml +42 -0
  205. data/spec/fixtures/zone.yaml +6 -0
  206. data/spec/message_builder_spec.rb +81 -0
  207. data/spec/response_spec.rb +35 -0
  208. data/spec/sif/representations/xml/header_spec.rb +30 -0
  209. data/spec/sif/representations/xml/message_spec.rb +20 -0
  210. data/spec/sif/representations/xml/object_data_spec.rb +19 -0
  211. data/spec/sif/representations/xml/protocol_spec.rb +34 -0
  212. data/spec/sif/representations/xml/provide_spec.rb +19 -0
  213. data/spec/sif/representations/xml/provision_spec.rb +56 -0
  214. data/spec/sif/representations/xml/register_spec.rb +17 -0
  215. data/spec/sif/representations/xml/request_spec.rb +17 -0
  216. data/spec/sif/representations/xml/response_spec.rb +16 -0
  217. data/spec/sif/representations/xml/spec_helper.rb +7 -0
  218. data/spec/sif/representations/xml/student_personal_spec.rb +69 -0
  219. data/spec/spec_helper.rb +7 -0
  220. data/spec/zone_spec.rb +26 -0
  221. metadata +455 -0
@@ -0,0 +1,14 @@
1
+ module SIF
2
+ module Representation
3
+ module Infra
4
+ module Message
5
+ class Wakeup < SIF::Represent
6
+
7
+ self.representation_wrap = 'SIF_Wakeup'
8
+
9
+ property :wakeup, :as => 'SIF_Wakeup'
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,24 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class Address < SIF::Represent
6
+ require_relative 'street'
7
+
8
+ self.representation_wrap = 'SIF_Address'
9
+
10
+ property :type, :as => 'Type', :attribute => true
11
+ property :street, :as => 'Street',
12
+ :class => MODEL_COMMON::Street,
13
+ :decorator => REPR_COMMON::Street
14
+ property :city, :as => 'City'
15
+ property :county, :as => 'County'
16
+ property :state_province, :as => 'StateProvince'
17
+ property :country, :as => 'Country'
18
+ property :postal_code, :as => 'PostalCode'
19
+ property :grid_location, :as => 'GridLocation'
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,16 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class AlertMessage < SIF::Represent
6
+
7
+ self.representation_wrap = 'AlertMessage'
8
+
9
+ property :type, :as => 'Type', :attribute => true
10
+ property :value, :content => true
11
+
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,28 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class ContactInfo < SIF::Represent
6
+ require_relative 'phone_number'
7
+ require_relative 'address'
8
+ require_relative 'email'
9
+
10
+ self.representation_wrap = 'ContactInfo'
11
+
12
+ property :name, :as => 'Name'
13
+ property :position_title => 'PositionTitle'
14
+ property :role => 'Role'
15
+ collection :emails => 'Email', :wrap => 'EmailList',
16
+ :class => MODEL_COMMON::Email,
17
+ :decorator => REPR_COMMON::Email
18
+ property :address => 'Address',
19
+ :class => MODEL_COMMON::Address,
20
+ :decorator => REPR_COMMON::Address
21
+ collection :phone_numbers => 'PhoneNumber', :wrap => 'PhoneNumberList',
22
+ :class => MODEL_COMMON::PhoneNumber,
23
+ :decorator => REPR_COMMON::PhoneNumber
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class CreditsAttempted < SIF::Represent
6
+
7
+ self.representation_wrap = 'CreditsAttempted'
8
+
9
+ property :type, :as => 'Type', :attribute => true
10
+ property :value, :content => true
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,43 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class Demographics < SIF::Represent
6
+ require_relative 'race'
7
+ require_relative 'english_proficiency'
8
+ require_relative 'language'
9
+ require_relative 'dwelling_arrangement'
10
+
11
+ self.representation_wrap = 'Demographics'
12
+
13
+ collection :races, :as => 'Race', :wrap => 'RaceList',
14
+ :class => MODEL_COMMON::Race,
15
+ :decorator => REPR_COMMON::Race
16
+
17
+ property :hispanic_latino, :as => 'HispanicLatino'
18
+ property :gender, :as => 'Gender'
19
+ property :birth_date, :as => 'BirthDate'
20
+ property :birth_date_verification, :as => 'BirthDateVerification'
21
+ property :place_of_birth, :as => 'PlaceOfBirth'
22
+ property :county_of_birth, :as => 'CountyOfBirth'
23
+ property :state_of_birth, :as => 'StateOfBirth'
24
+ property :country_of_birth, :as => 'CountryOfBirth'
25
+ collection :countries_of_citizenship, :as => 'CountryOfCitizenShip', :wrap => 'CountriesOfCitizenship'
26
+ collection :countries_of_citizenship, :as => 'CountryOfResidency', :wrap => 'CountriesOfResidency'
27
+ property :country_arrival_date, :as => 'CountryArrivalDate'
28
+ property :citizenship_status, :as => 'CitizenShipStatus'
29
+ property :english_proficiency, :as => 'EnglishProficiency',
30
+ :class => MODEL_COMMON::EnglishProficiency,
31
+ :decorator => REPR_COMMON::EnglishProficiency
32
+ collection :languages, :as => 'Languages', :wrap => 'LanguageList',
33
+ :class => MODEL_COMMON::Language,
34
+ :decorator => REPR_COMMON::Language
35
+ property :dwelling_arrangement, :as => 'DwellingArrangement',
36
+ :class => MODEL_COMMON::DwellingArrangement,
37
+ :decorator => REPR_COMMON::DwellingArrangement
38
+ property :marital_status, :as => 'MaritalStatus'
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,18 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class DwellingArrangement < SIF::Represent
6
+ require_relative 'other_code'
7
+
8
+ self.representation_wrap = 'DwellingArrangement'
9
+
10
+ property :code, :as => 'Code'
11
+ collection :other_codes, :as => 'OtherCode', :wrap => 'OtherCodeList',
12
+ :class => MODEL_COMMON::OtherCode,
13
+ :decorator => REPR_COMMON::OtherCode
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,16 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class ElectronicId < SIF::Represent
6
+
7
+ self.representation_wrap = 'ElectronicId'
8
+
9
+ property :type, :as => 'Type', :attribute => true
10
+ property :value, :content => true
11
+
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class Email < SIF::Represent
6
+
7
+ self.representation_wrap = 'Email'
8
+
9
+ property :type, :as => 'Type', :attribute => true
10
+ property :action, :as => 'SIF_Action', :attribute => true
11
+ property :value, :content => true
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class EnglishProficiency < SIF::Represent
6
+
7
+ self.representation_wrap = 'EnglishProficiency'
8
+
9
+ property :code, :as => 'Code'
10
+ collection :other_codes, :as => 'OtherCode', :wrap => 'OtherCodeList',
11
+ :class => MODEL_COMMON::OtherCode,
12
+ :decorator => REPR_COMMON::OtherCode
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,16 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class IdentificationInfo < SIF::Represent
6
+
7
+ self.representation_wrap = 'IdentificationInfo'
8
+
9
+ property :value, :content => true
10
+ property :code, :as => 'Code', :attribute => true
11
+
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,19 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class Language < SIF::Represent
6
+
7
+ self.representation_wrap = 'SIF_Error'
8
+
9
+ property :code, :as => 'Code'
10
+ property :language_type, :as => 'LanguageType'
11
+ property :dialect, :as => 'Dialect'
12
+ collection :other_codes, :wrap => 'OtherCodeList',
13
+ :class => MODEL_COMMON::OtherCode,
14
+ :decorator => REPR_COMMON::OtherCode
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class MedicalAlertMessage < SIF::Represent
6
+
7
+ self.representation_wrap = 'MedicalAlertMessage'
8
+
9
+ property :type, :attribute => true, :as => 'Type'
10
+ property :value, :content => true
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,16 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class MeetingTime < SIF::Represent
6
+
7
+ self.representation_wrap = 'MeetingTime'
8
+
9
+ property :timetable_day, :as => 'TimetableDay'
10
+ property :timetable_period, :as => 'TimetablePeriod'
11
+
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,22 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class Name < SIF::Represent
6
+
7
+ self.representation_wrap = 'Name'
8
+
9
+ property :type, :as => 'Type', :attribute => true
10
+ property :prefix, :as => 'Prefix'
11
+ property :last_name, :as => 'LastName'
12
+ property :first_name, :as => 'FirstName'
13
+ property :middle_name, :as => 'MiddleName'
14
+ property :suffix, :as => 'Suffix'
15
+ property :preferred_name, :as => 'PreferredName'
16
+ property :sort_name, :as => 'SortName'
17
+ property :full_name, :as => 'FullName'
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class OtherCode < SIF::Represent
6
+
7
+ self.representation_wrap = 'OtherCode'
8
+
9
+ property :code_set, :as => 'Codeset', :attribute => true
10
+ property :value, :content => true
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class OtherId < SIF::Represent
6
+
7
+ self.representation_wrap = 'OtherId'
8
+
9
+ property :type, :as => "Type", :attribute => true
10
+ property :value, :content => true
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,18 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class PhoneNumber < SIF::Represent
6
+
7
+ self.representation_wrap = 'SIF_Address'
8
+
9
+ property :type, :as => 'Type', :attribute => true
10
+ property :action, :as => 'SIF_Action', :attribute => true
11
+ property :number, :as => 'Number'
12
+ property :extension, :as => 'Extension'
13
+ property :listed_status, :as => 'ListedStatus'
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class PrincipalInfo < SIF::Represent
6
+
7
+ self.representation_wrap = 'PrincipalInfo'
8
+
9
+ property :contact_name, :as => 'ContactName'
10
+ property :contact_title, :as => 'ContactTitle'
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,18 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class Race < SIF::Represent
6
+
7
+ self.representation_wrap = 'Race'
8
+
9
+ property :code, :as => 'Code'
10
+ collection :other_codes, :as => 'OtherCode', :wrap => 'OtherCodeList',
11
+ :class => MODEL_COMMON::OtherCode,
12
+ :decorator => REPR_COMMON::OtherCode
13
+ property :proportion, :as => 'Proportion'
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class SCEDCode < SIF::Represent
6
+
7
+ self.representation_wrap = 'SCEDCode'
8
+
9
+ property :course_description, :as => 'CourseDescription'
10
+ property :course_level, :as => 'CourseLevel'
11
+ property :available_credit, :as => 'AvailableCredit'
12
+ property :sequence_number, :as => 'SequenceNumber'
13
+ property :sequence_limit, :as => 'SequenceLimit'
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,19 @@
1
+ module SIF
2
+ module Representation
3
+ module Model
4
+ module Common
5
+ class ScheduleInfo < SIF::Represent
6
+
7
+ self.representation_wrap = 'ScheduleInfo'
8
+
9
+ property :term_info_ref_id, :as => 'TermInfoRefId', :attribute => true
10
+ collection :teachers, :as => 'StaffPersonalRefId', :wrap => 'TeacherList'
11
+ collection :section_rooms, :as => 'RoomInfoRefId', :wrap => 'SectionRoomList'
12
+ collection :meeting_times, :as => 'MeetingTime', :wrap => 'MeetingTimeList',
13
+ :class => MODEL_COMMON::MeetingTime,
14
+ :decorator => REPR_COMMON::MeetingTime
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end