You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@falcon.apache.org by "Praveen Adlakha (JIRA)" <ji...@apache.org> on 2015/11/20 13:04:10 UTC
[jira] [Created] (FALCON-1621) Lifecycle of entity gets missed when
prism and falcon server communicates
Praveen Adlakha created FALCON-1621:
---------------------------------------
Summary: Lifecycle of entity gets missed when prism and falcon server communicates
Key: FALCON-1621
URL: https://issues.apache.org/jira/browse/FALCON-1621
Project: Falcon
Issue Type: Bug
Reporter: Praveen Adlakha
Assignee: Praveen Adlakha
Hi All,
When ever communication happens between Prism and falcon server in distributed mode methods related to lifecycle will never get called because of :
{code}
private String pathValue(Method method, Object... args) throws FalconException {
Path pathParam = method.getAnnotation(Path.class);
if (pathParam == null) {
throw new FalconException("No path param mentioned for " + method);
}
String pathValue = pathParam.value();
Annotation[][] paramAnnotations = method.getParameterAnnotations();
StringBuilder queryString = new StringBuilder("?");
for (int index = 0; index < args.length; index++) {
if (args[index] instanceof String || args[index] instanceof Boolean || args[index] instanceof Integer) {
String arg = String.valueOf(args[index]);
for (int annotation = 0; annotation < paramAnnotations[index].length; annotation++) {
Annotation paramAnnotation = paramAnnotations[index][annotation];
String annotationClass = paramAnnotation.annotationType().getName();
if (annotationClass.equals(QueryParam.class.getName())) {
queryString.append(getAnnotationValue(paramAnnotation, "value")).
append('=').append(arg).append("&");
} else if (annotationClass.equals(PathParam.class.getName())) {
pathValue = pathValue.replace("{"
+ getAnnotationValue(paramAnnotation, "value") + "}", arg);
}
}
}
}
return pathValue + queryString.toString();
}
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)