266 for (ResolvedJavaMethod method : type.getDeclaredMethods()) { 267 if (methodName.equals(method.getName()) && method instanceof HotSpotResolvedJavaMethod) { 268 HotSpotResolvedJavaMethod hotSpotMethod = (HotSpotResolvedJavaMethod) method; 269 compiler.compileMethod(new HotSpotCompilationRequest(hotSpotMethod, -1, 0L), false); 270 } 271 } 272 } 273 } 274 } catch (ClassNotFoundException ex) { 275 last = ex; 276 } 277 } 278 if (found.isEmpty()) { 279 throw new javax.management.MBeanException(last, "Cannot find class " + className + " to schedule recompilation"); 280 } 281 } 282 283 @Override 284 public javax.management.MBeanInfo getMBeanInfo() { 285 List<javax.management.MBeanAttributeInfo> attrs = new ArrayList<>(); 286 if (registered != null) { 287 for (OptionDescriptor descr : allOptionDescriptors()) { 288 attrs.add(new javax.management.MBeanAttributeInfo(descr.getName(), descr.getType().getName(), descr.getHelp(), true, true, false)); 289 } 290 } 291 javax.management.MBeanOperationInfo[] ops = { 292 new javax.management.MBeanOperationInfo("dumpMethod", "Enable IGV dumps for provided method", new javax.management.MBeanParameterInfo[]{ 293 new javax.management.MBeanParameterInfo("className", "java.lang.String", "Class to observe"), 294 new javax.management.MBeanParameterInfo("methodName", "java.lang.String", "Method to observe"), 295 }, "void", javax.management.MBeanOperationInfo.ACTION), 296 new javax.management.MBeanOperationInfo("dumpMethod", "Enable IGV dumps for provided method", new javax.management.MBeanParameterInfo[]{ 297 new javax.management.MBeanParameterInfo("className", "java.lang.String", "Class to observe"), 298 new javax.management.MBeanParameterInfo("methodName", "java.lang.String", "Method to observe"), 299 new javax.management.MBeanParameterInfo("filter", "java.lang.String", "The parameter for Dump option"), 300 }, "void", javax.management.MBeanOperationInfo.ACTION), 301 new javax.management.MBeanOperationInfo("dumpMethod", "Enable IGV dumps for provided method", new javax.management.MBeanParameterInfo[]{ 302 new javax.management.MBeanParameterInfo("className", "java.lang.String", "Class to observe"), 303 new javax.management.MBeanParameterInfo("methodName", "java.lang.String", "Method to observe"), 304 new javax.management.MBeanParameterInfo("filter", "java.lang.String", "The parameter for Dump option"), 305 new javax.management.MBeanParameterInfo("host", "java.lang.String", "The host where the IGV tool is running at"), 306 new javax.management.MBeanParameterInfo("port", "int", "The port where the IGV tool is listening at"), 307 }, "void", javax.management.MBeanOperationInfo.ACTION) 308 }; 309 | 266 for (ResolvedJavaMethod method : type.getDeclaredMethods()) { 267 if (methodName.equals(method.getName()) && method instanceof HotSpotResolvedJavaMethod) { 268 HotSpotResolvedJavaMethod hotSpotMethod = (HotSpotResolvedJavaMethod) method; 269 compiler.compileMethod(new HotSpotCompilationRequest(hotSpotMethod, -1, 0L), false); 270 } 271 } 272 } 273 } 274 } catch (ClassNotFoundException ex) { 275 last = ex; 276 } 277 } 278 if (found.isEmpty()) { 279 throw new javax.management.MBeanException(last, "Cannot find class " + className + " to schedule recompilation"); 280 } 281 } 282 283 @Override 284 public javax.management.MBeanInfo getMBeanInfo() { 285 List<javax.management.MBeanAttributeInfo> attrs = new ArrayList<>(); 286 for (OptionDescriptor descr : allOptionDescriptors()) { 287 attrs.add(new javax.management.MBeanAttributeInfo(descr.getName(), descr.getType().getName(), descr.getHelp(), true, true, false)); 288 } 289 javax.management.MBeanOperationInfo[] ops = { 290 new javax.management.MBeanOperationInfo("dumpMethod", "Enable IGV dumps for provided method", new javax.management.MBeanParameterInfo[]{ 291 new javax.management.MBeanParameterInfo("className", "java.lang.String", "Class to observe"), 292 new javax.management.MBeanParameterInfo("methodName", "java.lang.String", "Method to observe"), 293 }, "void", javax.management.MBeanOperationInfo.ACTION), 294 new javax.management.MBeanOperationInfo("dumpMethod", "Enable IGV dumps for provided method", new javax.management.MBeanParameterInfo[]{ 295 new javax.management.MBeanParameterInfo("className", "java.lang.String", "Class to observe"), 296 new javax.management.MBeanParameterInfo("methodName", "java.lang.String", "Method to observe"), 297 new javax.management.MBeanParameterInfo("filter", "java.lang.String", "The parameter for Dump option"), 298 }, "void", javax.management.MBeanOperationInfo.ACTION), 299 new javax.management.MBeanOperationInfo("dumpMethod", "Enable IGV dumps for provided method", new javax.management.MBeanParameterInfo[]{ 300 new javax.management.MBeanParameterInfo("className", "java.lang.String", "Class to observe"), 301 new javax.management.MBeanParameterInfo("methodName", "java.lang.String", "Method to observe"), 302 new javax.management.MBeanParameterInfo("filter", "java.lang.String", "The parameter for Dump option"), 303 new javax.management.MBeanParameterInfo("host", "java.lang.String", "The host where the IGV tool is running at"), 304 new javax.management.MBeanParameterInfo("port", "int", "The port where the IGV tool is listening at"), 305 }, "void", javax.management.MBeanOperationInfo.ACTION) 306 }; 307 |