package com.airlock.iam.common.application.configuration.event;

import com.airlock.iam.plugin.api.annotation.config.Plugin;
import com.airlock.iam.plugin.api.annotation.license.PluginLicenseRestriction;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;

@Plugin(
   displayName = "OATH OTP Secret Added",
   description = "<p>Event that is triggered by a user activating a new OATH OTP device.\nTechnically, it is triggered when a new shared secret is persisted for the user.</p>\n<p>Consult the \"OATH OTP Activation Step\" for details.</p>\n"
)
@PluginLicenseRestriction(moduleAffiliation = "OathOtp")
public class OathOtpSecretAddedSubscribedEventConfig implements LoginappUserSubscribedEventConfig {
   public static final String OATH_OTP_SECRET_ADDED_DISPLAY_NAME = "OATH OTP Secret Added";

   @SuppressFBWarnings(justification = "generated code")
   public static OathOtpSecretAddedSubscribedEventConfig.OathOtpSecretAddedSubscribedEventConfigBuilder builder() {
      return new OathOtpSecretAddedSubscribedEventConfig.OathOtpSecretAddedSubscribedEventConfigBuilder();
   }

   @SuppressFBWarnings(justification = "generated code")
   public static class OathOtpSecretAddedSubscribedEventConfigBuilder {
      @SuppressFBWarnings(justification = "generated code")
      OathOtpSecretAddedSubscribedEventConfigBuilder() {
      }

      @SuppressFBWarnings(justification = "generated code")
      public OathOtpSecretAddedSubscribedEventConfig build() {
         return new OathOtpSecretAddedSubscribedEventConfig();
      }

      @SuppressFBWarnings(justification = "generated code")
      @Override
      public String toString() {
         return "OathOtpSecretAddedSubscribedEventConfig.OathOtpSecretAddedSubscribedEventConfigBuilder()";
      }
   }
}
