ncs_navigator_authority 0.0.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/buildfile CHANGED
@@ -2,6 +2,6 @@ require 'buildr/bnd'
2
2
  require 'buildr-gemjar'
3
3
 
4
4
  define 'ncs_navigator_authority_gems' do
5
- project.version = '0.0.1.DEV'
6
- package(:gemjar).with_gem(:file => _('ncs_navigator_authority-0.0.1.gem'))
5
+ project.version = '1.0.0'
6
+ package(:gemjar).with_gem(:file => _('ncs_navigator_authority-1.0.0.gem')).with_gem('jruby-ossl', '0.7.5')
7
7
  end
@@ -1,8 +1,10 @@
1
1
  require 'ncs_navigator/configuration'
2
+ require 'logger'
2
3
  module NcsNavigator::Authorization::Psc
3
4
  class Authority
4
5
  def initialize(ignored_config=nil)
5
6
  @staff_portal_connection ||= staff_portal_client.connection
7
+ @logger = Logger.new("#{Java::JavaLang::System.getProperty('catalina.base')}/logs/ncs_navigator_authority.log")
6
8
  end
7
9
 
8
10
  def get_user_by_username(username, role_detail_level)
@@ -29,8 +31,9 @@ module NcsNavigator::Authorization::Psc
29
31
 
30
32
  def users_hash(users)
31
33
  users_hash = []
34
+ return users_hash unless users
32
35
  users.each do |u|
33
- users_hash << user_hash(u)
36
+ users_hash << user_hash(u) if u["username"]
34
37
  end
35
38
  users_hash
36
39
  end
@@ -65,7 +68,8 @@ module NcsNavigator::Authorization::Psc
65
68
  end
66
69
 
67
70
  def staff_portal_client
68
- NcsNavigator::Authorization::StaffPortal::Client.new(NcsNavigator.configuration.staff_portal_uri, :authenticator => create_authenticator)
71
+ NcsNavigator::Authorization::StaffPortal::Client.new(NcsNavigator.configuration.staff_portal_uri,
72
+ :authenticator => create_authenticator)
69
73
  end
70
74
 
71
75
  def create_authenticator
@@ -73,12 +77,18 @@ module NcsNavigator::Authorization::Psc
73
77
  end
74
78
 
75
79
  def get_staff(url)
76
- response = @staff_portal_connection.get url
77
- if response.status == 200
78
- response.body
79
- else
80
- nil
80
+ staff = nil
81
+ begin
82
+ response = @staff_portal_connection.get url
83
+ if response.status == 200
84
+ staff = response.body
85
+ else
86
+ @logger.warn("#{Time.now}: Staff Portal Response: #{response.body}")
87
+ end
88
+ rescue => e
89
+ @logger.error("#{Time.now} : Staff Portal: #{e.class} #{e.backtrace.join("\n")}")
81
90
  end
91
+ staff
82
92
  end
83
93
 
84
94
  def get_user_by_username_or_id(staff)
@@ -190,4 +200,4 @@ module NcsNavigator::Authorization::Psc
190
200
  end
191
201
  end
192
202
 
193
- end
203
+ end
@@ -1,5 +1,5 @@
1
1
  module NcsNavigator
2
2
  class Authorization
3
- VERSION = '0.0.2'
3
+ VERSION = '1.0.0'
4
4
  end
5
5
  end
@@ -131,6 +131,13 @@ describe NcsNavigator::Authorization::Psc::Authority do
131
131
  end
132
132
  @return_users.should be_empty
133
133
  end
134
+
135
+ it "excludes the user with null username from list of users returning" do
136
+ VCR.use_cassette('staff_portal/psc/users_with_null_username') do
137
+ @return_users = @psc_authority.get_users_by_role(:subject_manager)
138
+ end
139
+ @return_users.count.should == 1
140
+ end
134
141
  end
135
142
  end
136
143
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ncs_navigator_authority
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
+ - 1
7
8
  - 0
8
9
  - 0
9
- - 2
10
- version: 0.0.2
10
+ version: 1.0.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jalpa Patel
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-03-29 00:00:00 -05:00
18
+ date: 2012-09-06 00:00:00 -05:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency