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,12 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class OtherId
5
+ include Virtus.model
6
+
7
+ attribute :type, String
8
+ attribute :value, String
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class PhoneNumber
5
+ include Virtus.model
6
+
7
+ attribute :type, String
8
+ attribute :action, String
9
+ attribute :number, String
10
+ attribute :extension, String
11
+ attribute :listed_status, String
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,12 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class PrincipalInfo
5
+ include Virtus.model
6
+
7
+ attribute :contact_name
8
+ attribute :contact_title
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class Race
5
+ require_relative 'other_code'
6
+
7
+ include Virtus.model
8
+
9
+ attribute :code, String
10
+ attribute :proportion, Float
11
+ attribute :other_codes, Array[MODEL_COMMON::OtherCode]
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class SCEDCode
5
+ include Virtus.model
6
+
7
+ attribute :course_description, String
8
+ attribute :course_level, String
9
+ attribute :available_credit, Float
10
+ attribute :sequence_number, Integer
11
+ attribute :sequence_limit, Integer
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class ScheduleInfo
5
+ include Virtus.model
6
+
7
+ attribute :term_info_ref_id
8
+ attribute :teachers, Array[String]
9
+ attribute :section_rooms, Array[String]
10
+ attribute :meeting_times, Array[String]
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class ScheduleInfoOverride
5
+ include Virtus.model
6
+
7
+ attribute :term_info_ref_id
8
+ attribute :override
9
+ attribute :meeting_times, Array[String]
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class SchoolContact
5
+ require_relative 'contact_info'
6
+ include Virtus.model
7
+
8
+ attribute :publish_in_directory
9
+ attribute :contact_info, ContactInfo
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,18 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class SchoolCourseInfoOverride
5
+ include Virtus.model
6
+
7
+ attribute :override
8
+ attribute :course_code
9
+ attribute :state_course_code
10
+ attribute :district_course_code
11
+ attribute :subject_area
12
+ attribute :course_title
13
+ attribute :instruction_level
14
+ attribute :course_credits
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,22 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class Street
5
+ include Virtus.model
6
+
7
+ attribute :line1, String
8
+ attribute :line2, String
9
+ attribute :line3, String
10
+ attribute :complex, String
11
+ attribute :street_number, String
12
+ attribute :street_prefix, String
13
+ attribute :street_name, String
14
+ attribute :street_type, String
15
+ attribute :street_suffix, String
16
+ attribute :apartment_number_prefix, String
17
+ attribute :apartment_number, String
18
+ attribute :apartment_number_suffix, String
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,13 @@
1
+ module SIF
2
+ module Model
3
+ module Common
4
+ class SubjectArea
5
+ require_relative 'other_code'
6
+ include Virtus.model
7
+
8
+ attribute :code, String
9
+ attribute :other_codes, Array[MODEL_COMMON::OtherCode]
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ module SIF
2
+ module Model
3
+ module Group
4
+ module DataModel
5
+ class TermSpan
6
+ include Virtus.model
7
+
8
+ attribute :code
9
+ attribute :other_codes
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ module SIF
2
+ module Model
3
+ module Group
4
+ module SIS
5
+ class AttendanceCodeInfo
6
+ include Virtus.model
7
+
8
+ attribute :ref_id, String
9
+ attribute :school_info_ref_id, String
10
+ attribute :attendance_code, String
11
+ attribute :attendance_type, String
12
+ attribute :attendance_status, String
13
+ attribute :description, String
14
+ attribute :absence_value, Float
15
+ attribute :used_for_daily_attendance, Boolean
16
+ attribute :used_for_period_attendance, Boolean
17
+ attribute :metadata
18
+ attribute :extended_elements
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ require 'date'
2
+
3
+ module SIF
4
+ module Model
5
+ module Group
6
+ module SIS
7
+ class CalendarDate
8
+ include Virtus.model
9
+
10
+ attribute :date, Date
11
+ attribute :calendar_summary_ref_id, String
12
+ attribute :school_info_ref_id, String
13
+ attribute :school_year, Integer
14
+ attribute :calendar_date_type, String
15
+ attribute :calendar_date_number, Integer
16
+ attribute :student_attendance
17
+ attribute :teacher_attendance
18
+ attribute :administrator_attendance
19
+ attribute :metadata
20
+ attribute :extended_elements
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,31 @@
1
+ require 'date'
2
+
3
+ module SIF
4
+ module Model
5
+ module Group
6
+ module SIS
7
+ class DisciplineIncident
8
+ include Virtus.model
9
+
10
+ attribute :ref_id, String
11
+ attribute :school_year, Integer
12
+ attribute :agency_reporting
13
+ attribute :incident_number, String
14
+ attribute :incident_date, Date
15
+ attribute :incident_time, Time
16
+ attribute :incident_location, String
17
+ attribute :incident_location_ref_id, String
18
+ attribute :incident_cost, String
19
+ attribute :incident_reporter
20
+ attribute :related_tos
21
+ attribute :weapon_types
22
+ attribute :incident_category
23
+ attribute :offenders
24
+ attribute :victims
25
+ attribute :metadata
26
+ attribute :extended_elements
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,28 @@
1
+ module SIF
2
+ module Model
3
+ module Group
4
+ module SIS
5
+ class LEAInfo
6
+ include Virtus.model
7
+
8
+ attribute :ref_id, String
9
+ attribute :local_id, String
10
+ attribute :state_province_id, String
11
+ attribute :nces_id, String
12
+ attribute :lea_name, String
13
+ attribute :lea_url, String
14
+ attribute :education_agency_type, Integer
15
+ attribute :lea_contacts, Array[String]
16
+ attribute :phone_numbers, Array[Common::PhoneNumber]
17
+ attribute :addresses, Array[Common::Address]
18
+ attribute :identification_infos, Array[String]
19
+ attribute :grade_levels
20
+ attribute :operational_status, String
21
+ attribute :congressional_district, String
22
+ attribute :metadata
23
+ attribute :extended_elements
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,22 @@
1
+ module SIF
2
+ module Model
3
+ module Group
4
+ module SIS
5
+ module PersonalRepresenter
6
+ include Virtus.model
7
+
8
+ attribute :name, MODEL_COMMON::Name
9
+ attribute :local_id, String
10
+ attribute :state_province_id, String
11
+ attribute :electronic_ids, Array[MODEL_COMMON::ElectronicId]
12
+ attribute :other_ids, Array[MODEL_COMMON::OtherId]
13
+ attribute :other_names, String
14
+ attribute :demographics, Array[MODEL_COMMON::Demographics]
15
+ attribute :addresses, Array[MODEL_COMMON::Address]
16
+ attribute :phone_numbers, Array[MODEL_COMMON::PhoneNumber]
17
+ attribute :emails, Array[MODEL_COMMON::Email]
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,30 @@
1
+ require_relative 'sis_representer'
2
+
3
+ module SIF
4
+ module Model
5
+ module Group
6
+ module SIS
7
+ class SchoolCourseInfo
8
+ include Virtus.model
9
+ include SISRepresenter
10
+
11
+ attribute :school_info_id, String
12
+ attribute :school_year, String
13
+ attribute :course_code, String
14
+ attribute :state_course_code, String
15
+ attribute :district_course_code, String
16
+ attribute :subject_areas, Array[Common::SubjectArea]
17
+ attribute :course_title, String
18
+ attribute :description, String
19
+ attribute :instruction_level, String
20
+ attribute :course_credits, String
21
+ attribute :core_academic_course, String
22
+ attribute :graduation_requirement, String
23
+ attribute :department, String
24
+ attribute :sced_code, Common::SCEDCode
25
+
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,32 @@
1
+ module SIF
2
+ module Model
3
+ module Group
4
+ module SIS
5
+ class SchoolInfo
6
+ include Virtus.model
7
+
8
+ attribute :ref_id, String
9
+ attribute :local_id, String
10
+ attribute :state_province_id, String
11
+ attribute :nces_id, String
12
+ attribute :school_name, String
13
+ attribute :lea_info_ref_id, String
14
+ attribute :other_lea, String
15
+ attribute :school_type, String
16
+ attribute :school_focuses, String
17
+ attribute :school_url, String
18
+ attribute :principal_info, Common::PrincipalInfo
19
+ attribute :school_contacts, Array[Common::SchoolContact]
20
+ attribute :addresses, Array[Common::Address]
21
+ attribute :phone_numbers, Array[Common::PhoneNumber]
22
+ attribute :identification_infos, Common::IdentificationInfo
23
+ attribute :session_type, String
24
+ attribute :grade_levels, String
25
+ attribute :title_1_status, String
26
+ attribute :operational_status, String
27
+ attribute :congressional_district, String
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,26 @@
1
+ require_relative 'sis_representer'
2
+
3
+ module SIF
4
+ module Model
5
+ module Group
6
+ module SIS
7
+ class SectionInfo
8
+ include Virtus.model
9
+ include SISRepresenter
10
+
11
+ attribute :school_course_info, String
12
+ attribute :school_year, String
13
+ attribute :local_id, String
14
+ attribute :description, String
15
+ attribute :schedule_infos, Array[Common::ScheduleInfo]
16
+ attribute :medium_of_instruction, String
17
+ attribute :language_of_instruction, String
18
+ attribute :location_of_instruction, String
19
+ attribute :summer_school, String
20
+ attribute :school_course_info_override, Common::SchoolCourseInfoOverride
21
+
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,15 @@
1
+ module SIF
2
+ module Model
3
+ module Group
4
+ module SIS
5
+ module SISRepresenter
6
+ include Virtus.model
7
+
8
+ attribute :extended_elements, String
9
+ attribute :metadata, String
10
+ attribute :ref_id, String
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end