org.apache.cayenne.util.Util.isAccessible()方法的使用及代码示例

x33g5p2x  于2022-02-01 转载在 其他  
字(3.1k)|赞(0)|评价(0)|浏览(222)

本文整理了Java中org.apache.cayenne.util.Util.isAccessible()方法的一些代码示例,展示了Util.isAccessible()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Util.isAccessible()方法的具体详情如下:
包路径:org.apache.cayenne.util.Util
类名称:Util
方法名:isAccessible

Util.isAccessible介绍

[英]Returns true if a Member is accessible via reflection under normal Java access controls.
[中]如果在正常Java访问控制下可以通过反射访问成员,则返回true。

代码示例

代码示例来源:origin: org.apache.cayenne/cayenne-server

  1. private boolean verifyMethod(Method method, Class<?> entityType) {
  2. // must be non-static, void, with a single arg assignable to entity type
  3. // JPA spec also requires it to be non-final, but we don't care
  4. int modifiers = method.getModifiers();
  5. Class<?>[] parameters = method.getParameterTypes();
  6. if (!Modifier.isStatic(modifiers)
  7. && Void.TYPE.isAssignableFrom(method.getReturnType())
  8. && parameters.length == 1
  9. && parameters[0].isAssignableFrom(entityType)) {
  10. if (!Util.isAccessible(method)) {
  11. method.setAccessible(true);
  12. }
  13. return true;
  14. }
  15. return false;
  16. }

代码示例来源:origin: org.apache.cayenne/cayenne-server

  1. static AbstractSerializerFactory loadFactory(
  2. String factoryName,
  3. EntityResolver resolver) throws Exception {
  4. ClassLoader loader = Thread.currentThread().getContextClassLoader();
  5. Class factoryClass = Class.forName(factoryName, true, loader);
  6. if (!AbstractSerializerFactory.class.isAssignableFrom(factoryClass)) {
  7. throw new IllegalArgumentException(factoryClass
  8. + " is not a AbstractSerializerFactory");
  9. }
  10. Constructor c = factoryClass.getDeclaredConstructor();
  11. if (!Util.isAccessible(c)) {
  12. c.setAccessible(true);
  13. }
  14. AbstractSerializerFactory object = (AbstractSerializerFactory) c.newInstance();
  15. if (resolver != null) {
  16. try {
  17. Method setter = factoryClass.getDeclaredMethod(
  18. "setEntityResolver",
  19. EntityResolver.class);
  20. if (!Util.isAccessible(setter)) {
  21. setter.setAccessible(true);
  22. }
  23. setter.invoke(object, resolver);
  24. }
  25. catch (Exception e) {
  26. // ignore injection exception
  27. }
  28. }
  29. return object;
  30. }

代码示例来源:origin: org.apache.cayenne/cayenne-server

  1. private Method findMethod(Class<?> objectClass, String methodName)
  2. throws IllegalArgumentException {
  3. Method[] methods = objectClass.getDeclaredMethods();
  4. for (Method method : methods) {
  5. if (methodName.equals(method.getName())) {
  6. // must be non-static, void, with no args
  7. // JPA spec also requires it to be non-final, but we don't care
  8. int modifiers = method.getModifiers();
  9. if (!Modifier.isStatic(modifiers)
  10. && Void.TYPE.isAssignableFrom(method.getReturnType())
  11. && method.getParameterTypes().length == 0) {
  12. if (!Util.isAccessible(method)) {
  13. method.setAccessible(true);
  14. }
  15. return method;
  16. }
  17. }
  18. }
  19. throw new IllegalArgumentException("Class "
  20. + objectClass.getName()
  21. + " has no valid callback method '"
  22. + methodName
  23. + "'");
  24. }
  25. }

代码示例来源:origin: org.apache.cayenne/cayenne-nodeps

  1. if (!Util.isAccessible(c)) {
  2. c.setAccessible(true);
  3. });
  4. if (!Util.isAccessible(setter)) {
  5. setter.setAccessible(true);

代码示例来源:origin: org.apache.cayenne/cayenne-nodeps

  1. if (!Util.isAccessible(_method)) {
  2. _method.setAccessible(true);

代码示例来源:origin: org.apache.cayenne/cayenne-server

  1. if (!Util.isAccessible(_method)) {
  2. _method.setAccessible(true);

代码示例来源:origin: org.apache.cayenne/cayenne-nodeps

  1. if (!Util.isAccessible(field)) {
  2. field.setAccessible(true);

代码示例来源:origin: org.apache.cayenne/cayenne-server

  1. if (!Util.isAccessible(field)) {
  2. field.setAccessible(true);

相关文章