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

nel_h2
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
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