24h-payday

Archive for April, 2009

More functionality: Export ping results and filtering

Monday, April 27th, 2009

Yep, now you can export the ping results as a CVS file for later analisys or just for fun.  Also you can filter the contents of the result table using regular expressions as you type :)

Now is time for the next step which is to add some sexyness to the GUI using Synth.

Refactored GUI: Not Using JList anymore, welcome JTable. Also plans for the future

Saturday, April 25th, 2009

So first take a look on the old version of PingBlog (or run it from here using Java webstart):

StupidZombie
Initially the HTML Tag generation and the Ping GUI were separate.

Now the new version offers more details in a more organized way:

StupidZombie ping scree
Big difference using a JTable. Also ping updates are handled better using a Observable – Observer pattern.

The idea is to be able to navigate all the ping types more easily (yes, more directories are comming).

Version 1.0 details:
And when version 1.0 will be ready? Well, I plan to release a beta version with all the functionality enabled before having the website ready. But the following changes are coming pretty soon:

  • Sorting and filtering on the table. Easy one but need to sit down and code it
  • Use Synth for the look and feel of the application
  • Merge the new logo and look and feel with the GUI and the website. No ETA on this one, except than is a work in progress

Once all this is ready I will offer a Jar for download and a webstart link. Stay tunned, more changes comming this way :) !

And for version 1.1?

Version 1.1 will be mostly bug fixes but also will add two more important features:

  • More directories. Yes, there are lots of directories out there and StupidZombie will support them all!
  • Soporte para Español (Spanish support). Should be easy to plug in. Also other languages will be added

So let’s the Zombie domination begin!

Refactoring, refactoring…

Saturday, April 11th, 2009

Yep. Old code was … old, and kind of ugly. Okay, just plain ugly. So refactoring was in order, like on the Ping Factory class which looks much cleaner now:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import java.lang.management.ManagementFactory;
import java.util.Set;
import java.util.TreeSet;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.prefs.Preferences;
import java.util.ResourceBundle;
 
import javax.management.MBeanServer;
import javax.management.ObjectName;
 
/**
 * Factory class to return the proper Ping instance
 * @author undead@stupidzombie.com
 */
public final class PingFactory {
 
	/**
	 * Supported ping types
	 */
	public static enum PingTypes {
 
		UNKNOWN("", ""), 
		TO2BLOGS("To2Blogs", "PINGBLOG_TO2BLOGS_UNIQUEID"), 
		BLOGALAXIA("Blogalaxia", "PINGBLOG_BLOGALAXIA_UNIQUEID"), 
		VENEBLOGS("Venblogs", ""), 
		WEBLOGS("Weblogs", ""), 
		TECHNORATI("Technorati", ""), 
		BITACORASCOM("Bitacoras.com", ""), 
		PINGOMATIC("PingOMatic", "");
 
		public String desc;
		public String id;
		private PingTypes(final String aDesc, final String aId) {
			desc = aDesc;
			id = aId;
		}
	}
 
	private static PingFactory factory;
       // Rest of the code ommited :)

it is amazing how simple Enumerations simplified the code on this class. Now working on the ping controller, that section is long overdue :)