-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
Actual code:
public class IdentityProviderKeys {
public var aruba: String
public var etna: String
public var infocamere: String
public var infocert: String
public var intesi: String
public var lepida: String
public var namirial: String
public var poste: String
public var sielte: String
public var spiditalia: String
public var teamsystem: String
public var tim: String
public init(aruba: String, etna: String, infocamere: String, infocert: String, intesi: String, lepida: String, namirial: String, poste: String, sielte: String, spiditalia: String, teamsystem: String, tim: String) {
self.aruba = aruba
self.etna = etna
self.infocamere = infocamere
self.infocert = infocert
self.intesi = intesi
self.lepida = lepida
self.namirial = namirial
self.poste = poste
self.sielte = sielte
self.spiditalia = spiditalia
self.teamsystem = teamsystem
self.tim = tim
}
}
There are cases where we may want to exclude some providers, so I would define string attributes optional.
Also, is there any logical reason to shuffle identity provider array items?
struct IdentityProviderViewModel {
let identityProviderKeys: IdentityProviderKeys
// Returns the list of providers that is generated by the identity provider object
func generateProviders() -> [Provider]{
return [
Provider(name: IdentityProviderConstants.aruba.rawValue, idp: identityProviderKeys.aruba),
Provider(name: IdentityProviderConstants.etna.rawValue, idp: identityProviderKeys.etna),
Provider(name: IdentityProviderConstants.infocamere.rawValue, idp: identityProviderKeys.infocamere),
Provider(name: IdentityProviderConstants.infocert.rawValue, idp: identityProviderKeys.infocert),
Provider(name: IdentityProviderConstants.intesi.rawValue, idp: identityProviderKeys.intesi),
Provider(name: IdentityProviderConstants.lepida.rawValue, idp: identityProviderKeys.lepida),
Provider(name: IdentityProviderConstants.namirial.rawValue, idp: identityProviderKeys.namirial),
Provider(name: IdentityProviderConstants.poste.rawValue, idp: identityProviderKeys.poste),
Provider(name: IdentityProviderConstants.sielte.rawValue, idp: identityProviderKeys.sielte),
Provider(name: IdentityProviderConstants.spiditalia.rawValue, idp: identityProviderKeys.spiditalia),
Provider(name: IdentityProviderConstants.teamsystem.rawValue, idp: identityProviderKeys.teamsystem),
Provider(name: IdentityProviderConstants.tim.rawValue, idp: identityProviderKeys.tim)
].shuffled()
}
}
Metadata
Metadata
Assignees
Labels
No labels