---
# System prepended metadata

title: ValueObject導入

---

# ValueObject導入

```ruby=
class Campaign
  enum status: array_to_enum_hash(ListStatus::STATUSES), _sufix: true

  def list_status
    CatalogStatus.new(read_attribute(:status))
  end
end

class ListStatus
  STATUSES = %w(published unpublished not_set).freeze

  def initialize(status)
    @status = status
  end

  def set(status)
      # メール送信などsetする内容によって。
      if status === 
  end
  
  def get()
  end
end
```