package com.social.media.infrastructure.persistence.entity;

/**
 * JPA Entity enum for PostStatus
 */
public enum PostStatusEntity {
    DRAFT("RASCUNHO"),
    SCHEDULED("AGENDADO"),
    PUBLISHING("PUBLICANDO"),
    PUBLISHED("PUBLICADO"),
    ERROR("ERRO"),
    FAILED("FALHA"),
    ARCHIVED("ARQUIVADO"),
    CANCELLED("CANCELADO");
    
    private final String value;
    
    PostStatusEntity(String value) {
        this.value = value;
    }
    
    public String getValue() {
        return value;
    }
    
    public static PostStatusEntity fromValue(String value) {
        for (PostStatusEntity status : values()) {
            if (status.value.equals(value)) {
                return status;
            }
        }
        throw new IllegalArgumentException("Unknown post status: " + value);
    }
}
