org.molgenis.questionnaires.response.QuestionnaireResponse Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of molgenis-questionnaires Show documentation
Show all versions of molgenis-questionnaires Show documentation
Plugin module for gathering information from respondents using series of questions.
package org.molgenis.questionnaires.response;
import com.google.auto.value.AutoValue;
import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.molgenis.questionnaires.meta.Questionnaire;
import org.molgenis.questionnaires.meta.QuestionnaireStatus;
import org.molgenis.util.AutoGson;
@AutoValue
@AutoGson(autoValueClass = AutoValue_QuestionnaireResponse.class)
@SuppressWarnings(
"squid:S1610") // Abstract classes without fields should be converted to interfaces
public abstract class QuestionnaireResponse {
public abstract String getId();
public abstract String getLabel();
@Nullable
@CheckForNull
public abstract String getDescription();
public abstract QuestionnaireStatus getStatus();
public static QuestionnaireResponse create(
String id, String label, String description, QuestionnaireStatus status) {
return new AutoValue_QuestionnaireResponse(id, label, description, status);
}
public static QuestionnaireResponse create(Questionnaire questionnaire) {
return create(
String.valueOf(questionnaire.getIdValue()),
questionnaire.getLabel(),
questionnaire.getDescription(),
questionnaire.getStatus());
}
}