Class: User

Inherits:
Object
  • Object
show all
Defined in:
lib/satops/operator.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(user) ⇒ User

Returns a new instance of User.



1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
# File 'lib/satops/operator.rb', line 1135

def initialize(user)
  @login=user['login']
  @first_name=user['first_name']
  @last_name=user['last_name']
  @email=user['email']
  @org_id=user['org_id']
  @prefix=user['prefix']
  @last_login_date=user['last_login_date']
  @created_date=user['created_date']
  @enabled=user['enabled']
  @use_pam=user['use_pam']
  @roles=user['roles']
  @assigned_system_groups=user['assigned_system_groups']
  @default_system_groups=user['default_system_groups']
end

Instance Attribute Details

#loginObject (readonly)

Returns the value of attribute login.



1124
1125
1126
# File 'lib/satops/operator.rb', line 1124

def 
  @login
end

Class Method Details

.reader(sat, login) ⇒ Object



1126
1127
1128
1129
1130
1131
1132
1133
# File 'lib/satops/operator.rb', line 1126

def self.reader(sat, )
  user={'login'=>}
  user.merge!(sat.user.getDetails())
  user.merge!({'roles'=>sat.user.listRoles()})
  user.merge!({'assigned_system_groups'=>sat.user.listAssignedSystemGroups()})
  user.merge!({'default_system_groups'=>sat.user.listDefaultSystemGroups()})
  user
end

Instance Method Details

#common_update(sat) ⇒ Object



1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
# File 'lib/satops/operator.rb', line 1151

def common_update(sat)
  # Enable/Disable
  if @enabled
    sat.user.enable(@login)
  else
    sat.user.disable(@login)
  end

  # Adding roles
  @roles.each do |role|
    sat.user.addRole(@login, role)
  end

  # Assigned System Groups
  sat.user.addAssignedSystemGroups(@login, Helpers.filter(@assigned_system_groups, 'name'), false) unless @assigned_system_groups.empty?

  # Default System Groups
  sat.user.addDefaultSystemGroups(@login, Helpers.filter(@default_system_groups, 'name')) unless @default_system_groups.empty?
end

#create(sat) ⇒ Object



1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
# File 'lib/satops/operator.rb', line 1171

def create(sat)
 @use_pam
  if @use_pam
    sat.user.create(@login, "", @first_name, @last_name, @email, 1)
  else
    # When creating user on target, the passwor comes from configuration
    # because there no API to read it.
    password=Users.password
    sat.user.create(@login, password, @first_name, @last_name, @email, 0)
  end
  sat.user.setDetails(@login, {'prefix' => @prefix}) unless @prefix.empty?
  common_update(sat)
end

#update(sat) ⇒ Object



1185
1186
1187
1188
1189
1190
1191
1192
1193
# File 'lib/satops/operator.rb', line 1185

def update(sat)
  @prefix='' unless !@prefix.empty!
  # We ignore password update - Ain't any API for it!
  sat.user.setDetails(@login, {'first_name' => @first_name, 'last_name' => @last_name, 'email' => @email, 'prefix' => @prefix})
  sat.user.listRoles().each do |role|
    sat.user.removeRole(, role)
  end
  common_update(sat)
end