openagent 0.7.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +64 -0
- data/lib/openagent.rb +4 -0
- data/lib/openagent/agent.rb +24 -0
- data/lib/openagent/client.rb +170 -0
- data/lib/openagent/errors.rb +30 -0
- data/lib/openagent/message_builder.rb +171 -0
- data/lib/openagent/ssl_config.rb +26 -0
- data/lib/openagent/version.rb +3 -0
- data/lib/openagent/xml_helpers.rb +24 -0
- data/lib/openagent/zone.rb +58 -0
- data/lib/sif/infra/common/application.rb +13 -0
- data/lib/sif/infra/common/condition.rb +13 -0
- data/lib/sif/infra/common/condition_group.rb +14 -0
- data/lib/sif/infra/common/data.rb +11 -0
- data/lib/sif/infra/common/error.rb +14 -0
- data/lib/sif/infra/common/event.rb +0 -0
- data/lib/sif/infra/common/event_object.rb +12 -0
- data/lib/sif/infra/common/extended_query.rb +15 -0
- data/lib/sif/infra/common/extended_query_results.rb +12 -0
- data/lib/sif/infra/common/header.rb +27 -0
- data/lib/sif/infra/common/message.rb +49 -0
- data/lib/sif/infra/common/object.rb +11 -0
- data/lib/sif/infra/common/object_data.rb +46 -0
- data/lib/sif/infra/common/other_id.rb +12 -0
- data/lib/sif/infra/common/property.rb +12 -0
- data/lib/sif/infra/common/protocol.rb +16 -0
- data/lib/sif/infra/common/provision.rb +17 -0
- data/lib/sif/infra/common/query.rb +16 -0
- data/lib/sif/infra/common/query_object.rb +12 -0
- data/lib/sif/infra/common/secure_channel.rb +12 -0
- data/lib/sif/infra/common/security.rb +13 -0
- data/lib/sif/infra/common/status.rb +16 -0
- data/lib/sif/infra/common/unprovision.rb +9 -0
- data/lib/sif/infra/common/vendor.rb +13 -0
- data/lib/sif/infra/messages/ack.rb +16 -0
- data/lib/sif/infra/messages/event.rb +12 -0
- data/lib/sif/infra/messages/get_agent_acl.rb +11 -0
- data/lib/sif/infra/messages/get_message.rb +11 -0
- data/lib/sif/infra/messages/get_zone_status.rb +10 -0
- data/lib/sif/infra/messages/ping.rb +10 -0
- data/lib/sif/infra/messages/provide.rb +16 -0
- data/lib/sif/infra/messages/provision.rb +18 -0
- data/lib/sif/infra/messages/register.rb +21 -0
- data/lib/sif/infra/messages/request.rb +16 -0
- data/lib/sif/infra/messages/responder.rb +9 -0
- data/lib/sif/infra/messages/response.rb +18 -0
- data/lib/sif/infra/messages/sleep.rb +11 -0
- data/lib/sif/infra/messages/subscribe.rb +12 -0
- data/lib/sif/infra/messages/system_control.rb +15 -0
- data/lib/sif/infra/messages/system_control_data.rb +39 -0
- data/lib/sif/infra/messages/unprovide.rb +12 -0
- data/lib/sif/infra/messages/unregister.rb +11 -0
- data/lib/sif/infra/messages/unsubscribe.rb +12 -0
- data/lib/sif/infra/messages/wakeup.rb +11 -0
- data/lib/sif/infra/messages/zone_status_role.rb +12 -0
- data/lib/sif/infra/objects/agent_acl.rb +19 -0
- data/lib/sif/infra/objects/zone_status.rb +30 -0
- data/lib/sif/models/common/address.rb +21 -0
- data/lib/sif/models/common/alert_message.rb +12 -0
- data/lib/sif/models/common/base_name.rb +12 -0
- data/lib/sif/models/common/calendar_summary.rb +28 -0
- data/lib/sif/models/common/code.rb +12 -0
- data/lib/sif/models/common/contact_info.rb +21 -0
- data/lib/sif/models/common/credits_attempted.rb +12 -0
- data/lib/sif/models/common/demographics.rb +31 -0
- data/lib/sif/models/common/dwelling_arrangement.rb +14 -0
- data/lib/sif/models/common/earned_status.rb +15 -0
- data/lib/sif/models/common/electronic_id.rb +12 -0
- data/lib/sif/models/common/email.rb +13 -0
- data/lib/sif/models/common/english_proficiency.rb +14 -0
- data/lib/sif/models/common/exceptionality_category.rb +13 -0
- data/lib/sif/models/common/grade_level.rb +12 -0
- data/lib/sif/models/common/grid_location.rb +12 -0
- data/lib/sif/models/common/identification_info.rb +12 -0
- data/lib/sif/models/common/language.rb +14 -0
- data/lib/sif/models/common/meal_status.rb +16 -0
- data/lib/sif/models/common/medical_alert_message.rb +12 -0
- data/lib/sif/models/common/meeting_time.rb +12 -0
- data/lib/sif/models/common/name.rb +19 -0
- data/lib/sif/models/common/other_code.rb +12 -0
- data/lib/sif/models/common/other_id.rb +12 -0
- data/lib/sif/models/common/phone_number.rb +15 -0
- data/lib/sif/models/common/principal_info.rb +12 -0
- data/lib/sif/models/common/race.rb +15 -0
- data/lib/sif/models/common/sced_code.rb +15 -0
- data/lib/sif/models/common/schedule_info.rb +14 -0
- data/lib/sif/models/common/schedule_info_override.rb +13 -0
- data/lib/sif/models/common/school_contact.rb +13 -0
- data/lib/sif/models/common/school_course_info_override.rb +18 -0
- data/lib/sif/models/common/street.rb +22 -0
- data/lib/sif/models/common/subject_area.rb +13 -0
- data/lib/sif/models/groups/data_model/term_span.rb +14 -0
- data/lib/sif/models/groups/sis/attendance_code_info.rb +23 -0
- data/lib/sif/models/groups/sis/calendar_date.rb +25 -0
- data/lib/sif/models/groups/sis/discipline_incident.rb +31 -0
- data/lib/sif/models/groups/sis/lea_info.rb +28 -0
- data/lib/sif/models/groups/sis/personal_representer.rb +22 -0
- data/lib/sif/models/groups/sis/school_course_info.rb +30 -0
- data/lib/sif/models/groups/sis/school_info.rb +32 -0
- data/lib/sif/models/groups/sis/section_info.rb +26 -0
- data/lib/sif/models/groups/sis/sis_representer.rb +15 -0
- data/lib/sif/models/groups/sis/staff_personal.rb +20 -0
- data/lib/sif/models/groups/sis/student_personal.rb +37 -0
- data/lib/sif/models/groups/sis/student_section_enrollment.rb +21 -0
- data/lib/sif/models/groups/sis/term_info.rb +29 -0
- data/lib/sif/representations/infra/common/application.rb +16 -0
- data/lib/sif/representations/infra/common/condition.rb +16 -0
- data/lib/sif/representations/infra/common/condition_group.rb +18 -0
- data/lib/sif/representations/infra/common/data.rb +17 -0
- data/lib/sif/representations/infra/common/error.rb +17 -0
- data/lib/sif/representations/infra/common/event.rb +0 -0
- data/lib/sif/representations/infra/common/event_object.rb +15 -0
- data/lib/sif/representations/infra/common/extended_query.rb +18 -0
- data/lib/sif/representations/infra/common/extended_query_results.rb +15 -0
- data/lib/sif/representations/infra/common/header.rb +23 -0
- data/lib/sif/representations/infra/common/message.rb +54 -0
- data/lib/sif/representations/infra/common/object.rb +14 -0
- data/lib/sif/representations/infra/common/object_data.rb +43 -0
- data/lib/sif/representations/infra/common/other_id.rb +15 -0
- data/lib/sif/representations/infra/common/property.rb +15 -0
- data/lib/sif/representations/infra/common/protocol.rb +22 -0
- data/lib/sif/representations/infra/common/provision.rb +38 -0
- data/lib/sif/representations/infra/common/query.rb +24 -0
- data/lib/sif/representations/infra/common/query_object.rb +15 -0
- data/lib/sif/representations/infra/common/secure_channel.rb +15 -0
- data/lib/sif/representations/infra/common/security.rb +18 -0
- data/lib/sif/representations/infra/common/status.rb +18 -0
- data/lib/sif/representations/infra/messages/ack.rb +25 -0
- data/lib/sif/representations/infra/messages/event.rb +19 -0
- data/lib/sif/representations/infra/messages/get_message.rb +12 -0
- data/lib/sif/representations/infra/messages/ping.rb +13 -0
- data/lib/sif/representations/infra/messages/provide.rb +19 -0
- data/lib/sif/representations/infra/messages/provision.rb +37 -0
- data/lib/sif/representations/infra/messages/register.rb +30 -0
- data/lib/sif/representations/infra/messages/request.rb +24 -0
- data/lib/sif/representations/infra/messages/response.rb +29 -0
- data/lib/sif/representations/infra/messages/sleep.rb +14 -0
- data/lib/sif/representations/infra/messages/subscribe.rb +19 -0
- data/lib/sif/representations/infra/messages/system_control.rb +23 -0
- data/lib/sif/representations/infra/messages/system_control_data.rb +31 -0
- data/lib/sif/representations/infra/messages/wakeup.rb +14 -0
- data/lib/sif/representations/models/common/address.rb +24 -0
- data/lib/sif/representations/models/common/alert_message.rb +16 -0
- data/lib/sif/representations/models/common/contact_info.rb +28 -0
- data/lib/sif/representations/models/common/credits_attempted.rb +15 -0
- data/lib/sif/representations/models/common/demographics.rb +43 -0
- data/lib/sif/representations/models/common/dwelling_arrangement.rb +18 -0
- data/lib/sif/representations/models/common/electronic_id.rb +16 -0
- data/lib/sif/representations/models/common/email.rb +16 -0
- data/lib/sif/representations/models/common/english_proficiency.rb +17 -0
- data/lib/sif/representations/models/common/identification_info.rb +16 -0
- data/lib/sif/representations/models/common/language.rb +19 -0
- data/lib/sif/representations/models/common/medical_alert_message.rb +15 -0
- data/lib/sif/representations/models/common/meeting_time.rb +16 -0
- data/lib/sif/representations/models/common/name.rb +22 -0
- data/lib/sif/representations/models/common/other_code.rb +15 -0
- data/lib/sif/representations/models/common/other_id.rb +15 -0
- data/lib/sif/representations/models/common/phone_number.rb +18 -0
- data/lib/sif/representations/models/common/principal_info.rb +15 -0
- data/lib/sif/representations/models/common/race.rb +18 -0
- data/lib/sif/representations/models/common/sced_code.rb +18 -0
- data/lib/sif/representations/models/common/schedule_info.rb +19 -0
- data/lib/sif/representations/models/common/schedule_info_override.rb +18 -0
- data/lib/sif/representations/models/common/school_contact.rb +17 -0
- data/lib/sif/representations/models/common/school_course_info_override.rb +21 -0
- data/lib/sif/representations/models/common/street.rb +26 -0
- data/lib/sif/representations/models/common/subject_area.rb +17 -0
- data/lib/sif/representations/models/groups/data_model/term_span.rb +20 -0
- data/lib/sif/representations/models/groups/sis/personal_representer.rb +38 -0
- data/lib/sif/representations/models/groups/sis/school_course_info.rb +36 -0
- data/lib/sif/representations/models/groups/sis/school_info.rb +47 -0
- data/lib/sif/representations/models/groups/sis/section_info.rb +29 -0
- data/lib/sif/representations/models/groups/sis/sis_representer.rb +17 -0
- data/lib/sif/representations/models/groups/sis/staff_personal.rb +19 -0
- data/lib/sif/representations/models/groups/sis/student_personal.rb +37 -0
- data/lib/sif/representations/models/groups/sis/student_section_enrollment.rb +26 -0
- data/lib/sif/representations/models/groups/sis/term_info.rb +30 -0
- data/lib/sif/sif.rb +249 -0
- data/openagent.gemspec +33 -0
- data/spec/agent_spec.rb +32 -0
- data/spec/client_spec.rb +96 -0
- data/spec/fixtures/agent.yaml +31 -0
- data/spec/fixtures/messages/event.xml +72 -0
- data/spec/fixtures/messages/response.xml +107 -0
- data/spec/fixtures/sif/attendance_code_info.xml +9 -0
- data/spec/fixtures/sif/calendar_date.xml +22 -0
- data/spec/fixtures/sif/calendar_summary.xml +21 -0
- data/spec/fixtures/sif/demographics.xml +33 -0
- data/spec/fixtures/sif/discipline_incident.xml +70 -0
- data/spec/fixtures/sif/lea_info.xml +55 -0
- data/spec/fixtures/sif/section_info.xml +1536 -0
- data/spec/fixtures/sif/sif_header.xml +12 -0
- data/spec/fixtures/sif/sif_message__response.xml +107 -0
- data/spec/fixtures/sif/sif_object_data.xml +5 -0
- data/spec/fixtures/sif/sif_protocol.xml +3 -0
- data/spec/fixtures/sif/sif_protocol__properties.xml +10 -0
- data/spec/fixtures/sif/sif_provide.xml +9 -0
- data/spec/fixtures/sif/sif_provision.xml +33 -0
- data/spec/fixtures/sif/sif_register.xml +20 -0
- data/spec/fixtures/sif/sif_request.xml +21 -0
- data/spec/fixtures/sif/sif_response.xml +19 -0
- data/spec/fixtures/sif/sif_system_control.xml +10 -0
- data/spec/fixtures/sif/stu_pers_resp.xml +2 -0
- data/spec/fixtures/sif/student_personal.xml +42 -0
- data/spec/fixtures/zone.yaml +6 -0
- data/spec/message_builder_spec.rb +81 -0
- data/spec/response_spec.rb +35 -0
- data/spec/sif/representations/xml/header_spec.rb +30 -0
- data/spec/sif/representations/xml/message_spec.rb +20 -0
- data/spec/sif/representations/xml/object_data_spec.rb +19 -0
- data/spec/sif/representations/xml/protocol_spec.rb +34 -0
- data/spec/sif/representations/xml/provide_spec.rb +19 -0
- data/spec/sif/representations/xml/provision_spec.rb +56 -0
- data/spec/sif/representations/xml/register_spec.rb +17 -0
- data/spec/sif/representations/xml/request_spec.rb +17 -0
- data/spec/sif/representations/xml/response_spec.rb +16 -0
- data/spec/sif/representations/xml/spec_helper.rb +7 -0
- data/spec/sif/representations/xml/student_personal_spec.rb +69 -0
- data/spec/spec_helper.rb +7 -0
- data/spec/zone_spec.rb +26 -0
- metadata +455 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
module SIF
|
2
|
+
module Infra
|
3
|
+
module Object
|
4
|
+
class AgentACL
|
5
|
+
include Virtus.model
|
6
|
+
|
7
|
+
attribute :provide_access
|
8
|
+
attribute :subscribe_access
|
9
|
+
attribute :publish_add_access
|
10
|
+
attribute :publish_change_access
|
11
|
+
attribute :publish_delete_access
|
12
|
+
attribute :request_access
|
13
|
+
attribute :respond_access
|
14
|
+
attribute :metadata
|
15
|
+
attribute :extended_elements
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module SIF
|
2
|
+
module Infra
|
3
|
+
module Object
|
4
|
+
class ZoneStatus
|
5
|
+
include Virtus.model
|
6
|
+
|
7
|
+
attribute :vendor, Common::Vendor
|
8
|
+
|
9
|
+
attribute :zone_id, String
|
10
|
+
attribute :name, String
|
11
|
+
attribute :icon, String
|
12
|
+
attribute :providers
|
13
|
+
attribute :subscribers
|
14
|
+
attribute :add_publishers
|
15
|
+
attribute :change_publishers
|
16
|
+
attribute :delete_publishers
|
17
|
+
attribute :responders
|
18
|
+
attribute :requesters
|
19
|
+
attribute :sif_nodes
|
20
|
+
attribute :supported_authentication
|
21
|
+
attribute :supported_protocols
|
22
|
+
attribute :supported_versions
|
23
|
+
attribute :administration_url
|
24
|
+
attribute :contexts
|
25
|
+
attribute :metadata
|
26
|
+
attribute :extended_elements
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module SIF
|
2
|
+
module Model
|
3
|
+
module Common
|
4
|
+
class Address
|
5
|
+
require_relative 'street'
|
6
|
+
require_relative 'grid_location'
|
7
|
+
|
8
|
+
include Virtus.model
|
9
|
+
|
10
|
+
attribute :type, String
|
11
|
+
attribute :street, Street
|
12
|
+
attribute :city, String
|
13
|
+
attribute :county, String
|
14
|
+
attribute :state_province, String
|
15
|
+
attribute :country, String
|
16
|
+
attribute :postal_code, String
|
17
|
+
attribute :grid_location, GridLocation
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
3
|
+
module SIF
|
4
|
+
module Model
|
5
|
+
module Common
|
6
|
+
class CalendarSummary
|
7
|
+
include Virtus.model
|
8
|
+
|
9
|
+
attribute :date, Date
|
10
|
+
attribute :school_info_ref_id, String
|
11
|
+
attribute :school_year, Integer
|
12
|
+
attribute :local_id, String
|
13
|
+
attribute :description, String
|
14
|
+
attribute :days_in_session, Integer
|
15
|
+
attribute :start_date, Date
|
16
|
+
attribute :end_date, Date
|
17
|
+
attribute :first_instruction_date, Date
|
18
|
+
attribute :last_instruction_date, Date
|
19
|
+
attribute :graduation_date, Date
|
20
|
+
attribute :instructional_minutes, Integer
|
21
|
+
attribute :minutes_per_day, Integer
|
22
|
+
attribute :grade_levels
|
23
|
+
attribute :metadata
|
24
|
+
attribute :extended_elements
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require_relative 'name'
|
2
|
+
require_relative 'address'
|
3
|
+
require_relative 'email'
|
4
|
+
require_relative 'phone_number'
|
5
|
+
|
6
|
+
module SIF
|
7
|
+
module Model
|
8
|
+
module Common
|
9
|
+
class ContactInfo
|
10
|
+
include Virtus.model
|
11
|
+
|
12
|
+
attribute :name, Name
|
13
|
+
attribute :position_title, String
|
14
|
+
attribute :role, String
|
15
|
+
attribute :address, Address
|
16
|
+
attribute :emails, Array[Email]
|
17
|
+
attribute :phone_numbers, Array[PhoneNumber]
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'date'
|
2
|
+
require_relative 'language'
|
3
|
+
require_relative 'race'
|
4
|
+
|
5
|
+
module SIF
|
6
|
+
module Model
|
7
|
+
module Common
|
8
|
+
class Demographics
|
9
|
+
include Virtus.model
|
10
|
+
|
11
|
+
attribute :races, Array[Race]
|
12
|
+
attribute :hispanic_latino, Boolean
|
13
|
+
attribute :gender, String
|
14
|
+
attribute :birth_date, Date
|
15
|
+
attribute :birth_date_verification, String
|
16
|
+
attribute :place_of_birth, String
|
17
|
+
attribute :county_of_birth, String
|
18
|
+
attribute :state_of_birth, String
|
19
|
+
attribute :country_of_birth, String
|
20
|
+
attribute :countries_of_citizenship, Array[String]
|
21
|
+
attribute :countries_of_residency, Array[String]
|
22
|
+
attribute :country_arrival_date, Date
|
23
|
+
attribute :citizenship_status, Integer
|
24
|
+
attribute :english_proficiency
|
25
|
+
attribute :languages, Array[Language]
|
26
|
+
attribute :dwelling_arrangement, String
|
27
|
+
attribute :marital_status, String
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
3
|
+
module SIF
|
4
|
+
module Model
|
5
|
+
module Common
|
6
|
+
class MealStatus
|
7
|
+
include Virtus.model
|
8
|
+
|
9
|
+
attribute :type, String
|
10
|
+
attribute :start_date, Date
|
11
|
+
attribute :end_date, Date
|
12
|
+
attribute :school_year, Integer
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module SIF
|
2
|
+
module Model
|
3
|
+
module Common
|
4
|
+
class Name
|
5
|
+
include Virtus.model
|
6
|
+
|
7
|
+
attribute :type, String
|
8
|
+
attribute :prefix, String
|
9
|
+
attribute :last_name, String
|
10
|
+
attribute :first_name, String
|
11
|
+
attribute :middle_name, String
|
12
|
+
attribute :suffix, String
|
13
|
+
attribute :preferred_name, String
|
14
|
+
attribute :sort_name, String
|
15
|
+
attribute :full_name, String
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|