Class: Classifier::Storage::Base
- Defined in:
- lib/classifier/storage/base.rb
Overview
Abstract base class for storage backends. Implement this protocol to create custom storage (Redis, PostgreSQL, etc.)
Example:
class RedisStorage < Classifier::Storage::Base
def initialize(redis:, key:)
@redis, @key = redis, key
end
def write(data) = @redis.set(@key, data)
def read = @redis.get(@key)
def delete = @redis.del(@key)
def exists? = @redis.exists?(@key)
end
Instance Method Summary collapse
-
#delete ⇒ Object
Delete classifier data.
-
#exists? ⇒ Boolean
Check if data exists.
-
#read ⇒ Object
Load classifier data.
-
#write(data) ⇒ Object
Save classifier data.
Instance Method Details
#delete ⇒ Object
Delete classifier data
39 40 41 |
# File 'lib/classifier/storage/base.rb', line 39 def delete raise NotImplementedError, "#{self.class}#delete must be implemented" end |
#exists? ⇒ Boolean
Check if data exists
45 46 47 |
# File 'lib/classifier/storage/base.rb', line 45 def exists? raise NotImplementedError, "#{self.class}#exists? must be implemented" end |
#read ⇒ Object
Load classifier data
33 34 35 |
# File 'lib/classifier/storage/base.rb', line 33 def read raise NotImplementedError, "#{self.class}#read must be implemented" end |
#write(data) ⇒ Object
Save classifier data
27 28 29 |
# File 'lib/classifier/storage/base.rb', line 27 def write(data) raise NotImplementedError, "#{self.class}#write must be implemented" end |