24h-payday

Posts Tagged ‘java’

StupidZombie wants to send you a Tweet

Saturday, July 4th, 2009

Yep, the idea is that when you update your blog that becomes a tweet. No there is always the issue of build vs. buy and on this case I think I rather build functionality on top of existing libraries for StupidZombie. Not very concerned about speed and rather keep the project moving forward.

So which is the best Twitter library for Java out there? Looks like Twitter4J. I’ll give it a try, but that also means I may have to add Cryptography to StupidZombie as the API requires the user / twitter password in order to send tweets. Or maybe not, as the API seems to support OAuth.

Finished adding online manual browsing using default browser

Saturday, July 4th, 2009

Using Java Desktop object I enabled this functionality for the 1.1 release. Now is time to code other features.

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 :)