package com.airlock.iam.common.domain.model.event;

import com.airlock.iam.base.api.domain.model.event.EventType;
import com.airlock.iam.base.api.domain.model.user.UserId;
import com.airlock.iam.base.domain.model.event.EventCreationData;
import com.airlock.iam.common.api.domain.model.contextdata.ContextData;
import com.airlock.iam.common.api.domain.model.event.UserCreated;

public final class UserCreatedImpl extends AbstractUserEvent implements UserCreated {
   private final ContextData contextData;

   public UserCreatedImpl(EventCreationData eventCreationData, UserId userId, ContextData contextData) {
      super(eventCreationData, "User Created", userId);
      this.contextData = contextData;
   }

   @Override
   public ContextData contextData() {
      return this.contextData;
   }

   @Override
   public EventType type() {
      return CommonEventTypes.USER_CREATED;
   }
}
