src/jdk/internal/dynalink/beans/AbstractJavaLinker.java

changeset 439
973d78ee0728
parent 404
18d467e94150
child 463
8b97fe2b7c98
     1.1 --- a/src/jdk/internal/dynalink/beans/AbstractJavaLinker.java	Fri Jul 12 20:06:41 2013 +0530
     1.2 +++ b/src/jdk/internal/dynalink/beans/AbstractJavaLinker.java	Mon Jul 15 12:33:48 2013 +0200
     1.3 @@ -92,6 +92,8 @@
     1.4  import java.lang.reflect.Member;
     1.5  import java.lang.reflect.Method;
     1.6  import java.lang.reflect.Modifier;
     1.7 +import java.util.Collection;
     1.8 +import java.util.Collections;
     1.9  import java.util.HashMap;
    1.10  import java.util.List;
    1.11  import java.util.Map;
    1.12 @@ -194,6 +196,22 @@
    1.13  
    1.14      abstract FacetIntrospector createFacetIntrospector();
    1.15  
    1.16 +    Collection<String> getReadablePropertyNames() {
    1.17 +        return getUnmodifiableKeys(propertyGetters);
    1.18 +    }
    1.19 +
    1.20 +    Collection<String> getWritablePropertyNames() {
    1.21 +        return getUnmodifiableKeys(propertySetters);
    1.22 +    }
    1.23 +
    1.24 +    Collection<String> getMethodNames() {
    1.25 +        return getUnmodifiableKeys(methods);
    1.26 +    }
    1.27 +
    1.28 +    private static Collection<String> getUnmodifiableKeys(Map<String, ?> m) {
    1.29 +        return Collections.unmodifiableCollection(m.keySet());
    1.30 +    }
    1.31 +
    1.32      /**
    1.33       * Sets the specified dynamic method to be the property getter for the specified property. Note that you can only
    1.34       * use this when you're certain that the method handle does not belong to a caller-sensitive method. For properties

mercurial