Ask yourself how many times you've written (or had an IDE generate) something similar to:

public class AtomImpl implements IAtom {

private String property1;
private int property2;
private boolean property3;

@Override
public String getProperty1() {
return property1;
}

@Override
public int getProperty2() {
return property2;
}

@Override
public boolean isProperty3() {
return property3;
}

@Override
public void setProperty3(boolean property3) {
this.property3 = property3;
}
}

This project enables developers to easily generate proxies implementing atomic interfaces at runtime. Now to create an instance of IAtom you can simply write:

IAtom atom = (IAtom)AtomProxyBuilder.implement(IAtom.class).addProperties("property1", "1st property", "property2", 2, "property3", true).createProxy();

NOTE: guava and junit4 are required by this library.

Features

  • Assumes standard Java Bean method naming conventions without requiring that interfaces be in full Java Bean compliance.
  • Checks property states by default on proxy construction, thereby helping developers (painlessly) detect code breakage after refactoring. These "checks" can also be disabled.
  • Employs classic builder-pattern proxy construction.
  • Supports implementing multiple interfaces at once.
  • Supports implementing interfaces that extend multiple interfaces.
  • Generated proxies have useful toString() methods. Developers can specifically exclude properties from being utilized by toString().
  • Generated proxies are serializable if all property values are serializable.

Project Activity

See All Activity >

Follow atomproxy

atomproxy Web Site

You Might Also Like
Free CRM Software With Something for Everyone Icon
Free CRM Software With Something for Everyone

216,000+ customers in over 135 countries grow their businesses with HubSpot

Think CRM software is just about contact management? Think again. HubSpot CRM has free tools for everyone on your team, and it’s 100% free. Here’s how our free CRM solution makes your job easier.
Get free CRM
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of atomproxy!

Additional Project Details

Registered

2012-03-22