[Groonga-commit] droonga/droonga-engine at ff421d5 [buffered-forward] Normalize role

Back to archive index

YUKI Hiroshi null+****@clear*****
Tue Jan 6 17:55:35 JST 2015


YUKI Hiroshi	2015-01-06 17:55:35 +0900 (Tue, 06 Jan 2015)

  New Revision: ff421d55c02a873ac64c670de0d3be7d8c708ceb
  https://github.com/droonga/droonga-engine/commit/ff421d55c02a873ac64c670de0d3be7d8c708ceb

  Message:
    Normalize role

  Modified files:
    lib/droonga/node_metadata.rb

  Modified: lib/droonga/node_metadata.rb (+18 -2)
===================================================================
--- lib/droonga/node_metadata.rb    2015-01-06 17:44:25 +0900 (bb63ac6)
+++ lib/droonga/node_metadata.rb    2015-01-06 17:55:35 +0900 (6d018a5)
@@ -23,6 +23,17 @@ module Droonga
       SERVICE_PROVIDER   = "service-provider"
       ABSORB_SOURCE      = "absorb-source"
       ABSORB_DESTINATION = "absorb-destination"
+
+      ROLES = [
+        SERVICE_PROVIDER,
+        ABSORB_SOURCE,
+        ABSORB_DESTINATION,
+      ]
+
+      module_function
+      def valid?(role)
+        ROLES.include?(role)
+      end
     end
 
     def initialize
@@ -52,11 +63,11 @@ module Droonga
     end
 
     def role
-      get(:role) || Role::SERVICE_PROVIDER
+      normalize_role(get(:role))
     end
 
     def role=(new_role)
-      set(:role, new_role)
+      set(:role, normalize_role(new_role))
     end
 
     def reload
@@ -68,6 +79,11 @@ module Droonga
       key.to_sym
     end
 
+    def normalize_role(role)
+      role = Role::SERVICE_PROVIDER unless Role.valid?(role)
+      role
+    end
+
     def metadata_file
       @metadata_file ||= Path.node_metadata
     end
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index