com.onegini.sdk.model.config.v2.CimConfiguration Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of idp-sdk Show documentation
Show all versions of idp-sdk Show documentation
Java SDK to connect to the Onegini platform
/*
* Copyright 2013-2020 Onegini b.v.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.onegini.sdk.model.config.v2;
import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL;
import java.util.List;
import java.util.Objects;
import java.util.stream.Stream;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.onegini.sdk.model.config.v2.attributes.Attributes;
import com.onegini.sdk.model.config.v2.certificates.KeyPair;
import com.onegini.sdk.model.config.v2.features.Features;
import com.onegini.sdk.model.config.v2.loginmethods.LoginMethods;
import com.onegini.sdk.model.config.v2.notifications.EmailNotificationConfiguration;
import com.onegini.sdk.model.config.v2.organisations.Organisation;
import com.onegini.sdk.model.config.v2.redirects.RedirectsConfiguration;
import com.onegini.sdk.model.config.v2.stepup.StepUp;
import com.onegini.sdk.model.config.v2.uiextension.UiExtension;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@JsonInclude(NON_NULL)
public class CimConfiguration {
@JsonProperty("custom_messages")
private CustomMessages customMessages;
@JsonProperty("features")
private Features features;
@JsonProperty("attributes")
private Attributes attributes;
@JsonProperty("ui_extension")
private UiExtension uiExtension;
@JsonProperty("step_up")
private StepUp stepUp;
@JsonProperty("login_methods")
private LoginMethods loginMethods;
@JsonProperty("email_notifications")
private EmailNotificationConfiguration emailNotificationConfiguration;
@JsonProperty("redirects")
private RedirectsConfiguration redirectsConfiguration;
@JsonProperty("organisations")
private List organisations;
@JsonProperty("key_pairs")
private List keyPairs;
@JsonIgnore
public boolean hasAtLeastOneConfigurationUnit() {
return Stream
.of(customMessages, features, attributes, uiExtension, stepUp, loginMethods, redirectsConfiguration, organisations, emailNotificationConfiguration)
.anyMatch(Objects::nonNull);
}
}