Add a "last activity" method to quickly determine when a list was last used. Bump version.
authorMahlon E. Smith <mahlon@laika.com>
Wed, 24 May 2017 15:42:39 -0700
changeset 24 f8873b391f3d
parent 23 eedb2586dea4
child 25 81cc7d47f68f
Add a "last activity" method to quickly determine when a list was last used. Bump version.
lib/ezmlm.rb
lib/ezmlm/list.rb
spec/ezmlm/list_spec.rb
--- a/lib/ezmlm.rb	Tue May 16 22:28:21 2017 -0700
+++ b/lib/ezmlm.rb	Wed May 24 15:42:39 2017 -0700
@@ -14,7 +14,7 @@
 	# $Id$
 
 	# Package version
-	VERSION = '1.0.2'
+	VERSION = '1.1.0'
 
 	# Suck in the components.
 	#
--- a/lib/ezmlm/list.rb	Tue May 16 22:28:21 2017 -0700
+++ b/lib/ezmlm/list.rb	Wed May 24 15:42:39 2017 -0700
@@ -664,6 +664,16 @@
 	end
 
 
+	### Return a Time object for the last activity on the list, or nil
+	### if archiving is disabled or there are no posts.
+	###
+	def last_activity
+		file = self.listdir + 'archnum'
+		return unless file.exist?
+		return file.stat.mtime
+	end
+
+
 	### Parse all thread indexes into a single array that can be used
 	### as a lookup table.
 	###
--- a/spec/ezmlm/list_spec.rb	Tue May 16 22:28:21 2017 -0700
+++ b/spec/ezmlm/list_spec.rb	Wed May 24 15:42:39 2017 -0700
@@ -236,6 +236,10 @@
 		expect( list.digest_count ).to eq( 10 )
 	end
 
+	it 'knows the date of the most recent posting' do
+		expect( list.last_activity ).to be_a( Time )
+	end
+
 	it 'can set a new digest message count' do
 		list.digest_count = 25
 		expect( list.digest_count ).to eq( 25 )