Hello community,

here is the log from the commit of package webyast-services-ws for 
openSUSE:Factory
checked in at Tue May 17 12:37:06 CEST 2011.



--------
--- webyast-services-ws/webyast-services-ws.changes     2011-02-09 
10:25:33.000000000 +0100
+++ 
/mounts/work_src_done/STABLE/webyast-services-ws/webyast-services-ws.changes    
    2011-05-02 14:41:58.000000000 +0200
@@ -1,0 +2,12 @@
+Mon May  2 12:41:48 UTC 2011 - sch...@novell.com
+
+- adapt caching to the new job handling
+- 0.2.9 
+
+-------------------------------------------------------------------
+Tue Apr 12 13:27:34 UTC 2011 - sch...@novell.com
+
+- new caching
+- 0.2.8 
+
+-------------------------------------------------------------------

calling whatdependson for head-i586


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ webyast-services-ws.spec ++++++
--- /var/tmp/diff_new_pack.h3KdHC/_old  2011-05-17 12:36:44.000000000 +0200
+++ /var/tmp/diff_new_pack.h3KdHC/_new  2011-05-17 12:36:44.000000000 +0200
@@ -22,11 +22,11 @@
 Provides:       yast2-webservice-services = %{version}
 Obsoletes:      yast2-webservice-services < %{version}
 PreReq:         yast2-webservice
-License:        GPLv2
+License:        GPL v2 only
 Group:          Productivity/Networking/Web/Utilities
 Url:            http://en.opensuse.org/Portal:WebYaST
 AutoReqProv:    on
-Version:        0.2.7
+Version:        0.2.9
 Release:        1
 Summary:        WebYaST - system services management service
 Source:         www.tar.bz2
@@ -52,7 +52,7 @@
 #
 
 %package testsuite
-License:        GPLv2
+
 Group:          Productivity/Networking/Web/Utilities
 Requires:       %{name} = %{version}
 Requires:       webyast-base-ws-testsuite


++++++ www.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/www/app/models/service.rb 
new/www/app/models/service.rb
--- old/www/app/models/service.rb       2011-02-01 10:49:25.000000000 +0100
+++ new/www/app/models/service.rb       2011-04-29 18:23:25.000000000 +0200
@@ -56,11 +56,18 @@
 
   # factored out because of testing
   def self.run_runlevel
-#     `/sbin/runlevel` # RORSCAN_ITL
+#    `/sbin/runlevel` # RORSCAN_ITL
   end
 
+
   public
 
+  def self.cache_argument
+    resource = Resource.find("org.opensuse.yast.modules.yapi.services")
+    return resource.cache_arguments if resource && 
!resource.cache_arguments.blank?
+    return nil
+  end
+
   # reading configuration file
   #
   def self.parse_filter(path = nil)
@@ -88,28 +95,29 @@
   # each service.
   #
   # services = Service.find_all
-  def self.find_all(params)
-    params = {} if params.nil?
+  def self.find_all(params = nil)
+    YastCache.fetch(self,cache_argument) {
+      params = {} if params.nil?
 
-    services   = []
-    services_map= {} # helper structure
+      services = []
+      services_map= {} # helper structure
 
-    filter             = parse_filter
+      filter           = parse_filter
 
-    args       = {
+      args     = {
        "read_status"   => [ "b", params.has_key?("read_status")],
        "shortdescription"      => [ "b", true],
        "description"   => [ "b", true],
        "dependencies"  => [ "b", true],
        "filter"        => [ "as", filter ]
-    }
+      }
        
-    # read list of all init.d services
-    yapi_ret = YastService.Call("YaPI::SERVICES::Read", args)
+      # read list of all init.d services
+      yapi_ret = YastService.Call("YaPI::SERVICES::Read", args)
 
-    if yapi_ret.nil?
-       raise ServiceError.new("no-services", "Can't get services list")
-    else
+      if yapi_ret.nil?
+        raise ServiceError.new("no-services", "Can't get services list")
+      else
        yapi_ret.each do |s|
          service       = Service.new(s["name"])
          service.status        = s["status"].to_i if s.has_key?("status")
@@ -121,45 +129,47 @@
          Rails.logger.debug "service: #{service.inspect}"
          services_map[s["name"]]       = service
         end
-    end
+      end
 
-    # read list of custom (user defined) services
-    args["custom"]     = [ "b", true]
-    args["dependencies"]= [ "b", false]
+      # read list of custom (user defined) services
+      args["custom"]   = [ "b", true]
+      args["dependencies"]= [ "b", false]
        
-    yapi_ret = YastService.Call("YaPI::SERVICES::Read", args)
+      yapi_ret = YastService.Call("YaPI::SERVICES::Read", args)
 
-    if yapi_ret.nil?
-       raise ServiceError.new("no-custom-services", "Can't get custom services 
list")
-    else
-       yapi_ret.each do |s|
-         service       = Service.new(s["name"])
-         service.status        = s["status"].to_i if s.has_key?("status")
-         service.description   = s["description"] if s.has_key?("description")
-         service.summary       = s["shortdescription"] if 
s.has_key?("shortdescription")
-         service.custom        = true
-         # service.enabled cannot be checked, we do not know how for custom 
service
-         Rails.logger.debug "service: #{service.inspect}"
-         services_map[s["name"]]       = service
+      if yapi_ret.nil?
+        raise ServiceError.new("no-custom-services", "Can't get custom 
services list")
+      else
+        yapi_ret.each do |s|
+          service      = Service.new(s["name"])
+          service.status       = s["status"].to_i if s.has_key?("status")
+          service.description  = s["description"] if s.has_key?("description")
+          service.summary      = s["shortdescription"] if 
s.has_key?("shortdescription")
+          service.custom       = true
+          # service.enabled cannot be checked, we do not know how for custom 
service
+          Rails.logger.debug "service: #{service.inspect}"
+          services_map[s["name"]]      = service
         end
-    end
-    if filter.nil? || filter.empty?
-       services        = services_map.values.sort { |a,b|  a.name <=> b.name }
-    else
-       filter.each do |name|
-           if services_map.has_key? name
-               s = services_map[name]
-               # filter out dependent services, which are not present in filter
-               s.required_for_start.reject! { |rs| !filter.include? rs }
-               s.required_for_stop.reject! { |rs| !filter.include? rs }
-               services << s
-           end
-       end
-    end
-    services
+      end
+      if filter.nil? || filter.empty?
+        services       = services_map.values.sort { |a,b|  a.name <=> b.name }
+      else
+        filter.each do |name|
+          if services_map.has_key? name
+            s = services_map[name]
+            # filter out dependent services, which are not present in filter
+            s.required_for_start.reject! { |rs| !filter.include? rs }
+            s.required_for_stop.reject! { |rs| !filter.include? rs }
+              services << s
+           end
+        end
+      end
+      services
+    }
   end
 
-  def self.find(id)
+  def self.find(id, params = nil)
+    return find_all(params) if id == :all
     # actually we do not need to read the real status now
     Service.new(id)
   end
@@ -213,6 +223,7 @@
       raise e
     end
     Rails.logger.debug "Command returns: #{ret.inspect}"
+    YastCache.reset(self, Service.cache_argument)
     ret.symbolize_keys!
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/www/config/resources/services.yml 
new/www/config/resources/services.yml
--- old/www/config/resources/services.yml       2010-08-27 14:58:55.000000000 
+0200
+++ new/www/config/resources/services.yml       2011-04-11 12:49:05.000000000 
+0200
@@ -1,2 +1,11 @@
 interface: org.opensuse.yast.modules.yapi.services
 controller: services
+
+#cache:
+#  enabled: true/false
+#  priority: -100..100
+#  reload_after: seconds (0 == do not reload)
+#  arguments e.g. "{test => '2'}"
+cache:
+  enabled: true
+  arguments: '{"read_status"=>"1"}'


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to