[Hawkular-dev] @Null / @NotNull
Jay Shaughnessy
jshaughn at redhat.com
Mon Mar 2 17:06:03 EST 2015
Regardless of which parameter annotations we use it's been a pain point
with Eclipse formatting. I played around a little in one of our Alerts
Rest handlers and I think the best I've seen is to enable these options
in the formatter, under the New Lines tab:
x Insert New Line after annotations on parameters
x Insert New Line after type annotations
The unfortunate thing is that at least with my version of Eclipse, it
works well only if you manually put the first parameter on a new line.
With the changes you'll get this from Eclipse:
@GET
@Path("/trigger/{triggerId}")
@Produces(APPLICATION_JSON)
@ApiOperation(value = "Find all threshold conditions",
responseClass =
"Collection<org.hawkular.alerts.api.model.condition.StringCondition>",
notes = "Pagination is not yet implemented")
public void findAllThresholdConditionsByTrigger(
@Suspended
final AsyncResponse response,
@ApiParam(value = "Trigger id to get threshold conditions",
required = true)
@PathParam("triggerId")
final String triggerId) {
try {
Collection<Condition> conditionsList =
definitions.getTriggerConditions(triggerId, null);
Collection<ThresholdCondition> thresholdConditions = new
ArrayList<ThresholdCondition>();
for (Condition cond : conditionsList) {
if (cond instanceof ThresholdCondition) {
thresholdConditions.add((ThresholdCondition) cond);
}
}
if (thresholdConditions.isEmpty()) {
log.debugf("GET - findAllThresholdConditions - Empty");
response.resume(Response.status(Response.Status.NO_CONTENT).type(APPLICATION_JSON_TYPE).build());
} else {
log.debugf("GET - findAllThresholdConditions - %s
compare conditions. ", thresholdConditions.size());
response.resume(Response.status(Response.Status.OK)
.entity(thresholdConditions).type(APPLICATION_JSON_TYPE).build());
}
} catch (Exception e) {
log.debugf(e.getMessage(), e);
Map<String, String> errors = new HashMap<String, String>();
errors.put("errorMsg", "Internal Error: " + e.getMessage());
response.resume(Response.status(Response.Status.INTERNAL_SERVER_ERROR)
.entity(errors).type(APPLICATION_JSON_TYPE).build());
}
}
Basically the convention being that if you have annotations in the
params, each goes on it's own line. I actually don't care what options
we use but this is one formatting area where I still keep seeing
disparity between the IDEs.
On 3/2/2015 10:41 AM, Thomas Segismont wrote:
> Le 02/03/2015 15:56, Heiko W.Rupp a écrit :
>> The annotations from FindBugs and JSR-308 can allow for static code analysis,
>> which may be helpful in error prevention as well.
> Good point
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
More information about the hawkular-dev
mailing list