Entries Tagged as ColdFusion

Seeking My Dream Job

Recent circumstances leave me in a position to seek out my dream job. Ideally, my next employment will be with an an organization that understands the benefits associated with:

  • object oriented software development
  • agile software development practices
  • software libraries and frameworks (MVC, ORM, Unit Test)
  • telecommuting and teleconferencing
  • continuous learning

If you are looking a passionate ColdFusion developer with a professional attitude and desire to write great software, please contact me.

My resume (MS Word format) is available for download.

Metro 0.4.1 Released

A big thanks to John Whish for spotting a bug in the way the Metro ServiceFactory resolves component class paths. The componentPath and libPath init arguments are optional, so when both are empty strings, the ServiceFactory threw an error. This issue is resolved with revision 1 for Metro 0.4.

Metro 0.4 Released

The latest Metro release (0.4) includes some bug fixes and a significant change to the included security package. After much consideration, I felt it was appropriate to separate the security package into "user" and "security" to facilitate integration with other projects and provide better separation of concerns. There is now a UserService which is responsible for managing the User, Role and Permission objects. The SecurityService is now primarily responsible for managing user sessions.

Additional meaningful updates below:

  1. The loginUser() method found in UserService, now checks the Active status for a User.
  2. The User decorator's hasPermission() method now accepts a comma separated list of permissions to check.

Wiring the Coldbox Logger Plugin To An AOP Logging Advice

Logging is one of the classic cross-cutting concerns one hears about when discussing Aspect Oriented Programming (AOP). Other common aspects are caching, security and data transformation. Over the past year, I've begun to apply AOP with ColdSpring to my application design. I was completely confused about just what was going on with AOP, when I first looked at it, then, by degrees, I came to realize that it is actually pretty simple if you can focus on the basics without trying to absorb all the terms associated with AOP. With the release of ColdSpring 1.2, Brian Kotek wrote an excellent quickstart guide, that I recommend (especially for the AOP tutorial which I borrow heavily from for this example). I'll briefly describe how I wrapped my head around the concept.

Customizing the ColdBox Logger Plugin with Method Injection

I've started using Coldbox recently and really like the tooling it provides. I don't always have access to the ColdFusion logs for apps on shared servers and although I have worked with log4j, I didn't like property file configuration. The simplicity of the ColdBox logger is great, but I wanted to be able to set log levels and work with the standard debug(), info(), warn(), error() and fatal() methods. One way to achieve this is to mixin the desired behaviour. Another ColdBox plugin, methodInjector, allowed me to do just that.