Update of /cvs/scoop/scoop/lib
In directory lithium.sabren.com:/tmp/cvs-serv3971/lib

Modified Files:
	Scoop.pm 
Log Message:
Checking in code to use memcached with Scoop instead of the native caching system. -j


Index: Scoop.pm
===================================================================
RCS file: /cvs/scoop/scoop/lib/Scoop.pm,v
retrieving revision 1.144
retrieving revision 1.145
diff -C2 -d -r1.144 -r1.145
*** Scoop.pm	8 Feb 2006 03:42:02 -0000	1.144
--- Scoop.pm	26 Apr 2006 20:56:47 -0000	1.145
***************
*** 94,97 ****
--- 94,100 ----
  	# Set this site's cache namespace
  	$self->_set_cache();
+ 
+ 	# and set up the memcached object
+ 	$self->_set_memcached();
  	
  	# set the session object
***************
*** 182,185 ****
--- 185,189 ----
  sub currtheme	 	{ return $_[0]->{THEME}		}
  sub cache		{ return $_[0]->{CACHE}		}
+ sub memcached		{ return $_[0]->{MEMCACHED}	}
  sub boxes		{ return $_[0]->{BOXES} 	}
  sub handler		{ return $_[0]->{HANDLER}	}
***************
*** 518,522 ****
  	
  	$self->{BOXES} = 'Scoop::BOXES::'.$self->{CONFIG}->{site_id};
- 	#warn "Box namespace is $self->{BOXES}\n";
  	return;
  }
--- 522,525 ----
***************
*** 526,530 ****
  	my $time = time();
  	
! 	if (my $cached = $self->cache->fetch_data({resource => 'boxes', 
  		                                        element => 'BOXES'})) {
  		$self->{BOX_DATA} = $cached;
--- 529,533 ----
  	my $time = time();
  	
! 	if (my $cached = $self->cache->fetch_data({resource => "boxes", 
  		                                        element => 'BOXES'})) {
  		$self->{BOX_DATA} = $cached;
***************
*** 544,550 ****
  
  	# And also update the cache
! 	$self->cache->cache_data({resource => 'boxes', 
! 		                  element => 'BOXES', 
! 				  data => $self->{BOX_DATA}});
  							  		
  	# Now do a compile on all the boxes. Whee.
--- 547,551 ----
  
  	# And also update the cache
! 	$self->cache->store("boxes", $self->{BOX_DATA}, '+30m');
  							  		
  	# Now do a compile on all the boxes. Whee.
***************
*** 1244,1247 ****
--- 1245,1262 ----
  	return;
  }
+ 
+ sub _set_memcached {
+ 	my $self = shift;
+ 	return '' if !$self->{CONFIG}->{memcached_servers};
+ 	my $memserv = $self->{CONFIG}->{memcached_servers};
+ 	my $memcomp = $self->{CONFIG}->{memcached_compress};
+ 	my @memarr = split /,/, $memserv;
+ 	
+ 	my $memd = new Cache::Memcached;
+ 	$memd->set_servers(\@memarr);
+ 	$memd->set_compress_threshold($memcomp);
+ 	$self->{MEMCACHED} = $memd;
+ 	return;
+ 	}
  
  sub _set_html_checker {