@Test public void registerFunctionsIncrementally() { BrwsrCtx ctx = Contexts.newBuilder().register(Technology.class, this, 100).build(); MyType type = new MyType(); MyObj obj = new MyObj(type, ctx); type.registerFunction("fifth", 5); obj.proto.applyBindings(); assertEquals(6, functions.length); assertNull(functions[0]); assertNull(functions[1]); assertNull(functions[2]); assertNull(functions[3]); assertNull(functions[4]); assertNotNull(functions[5]); }
public void applyBindings() { initBindings(null).applyBindings(null); }
Proto { public void applyBindings() { initBindings(null).applyBindings(null); } }
Proto { public void applyBindings() { initBindings(null).applyBindings(null); } Proto(Object obj, Type type, BrwsrCtx context); }
Proto { public void applyBindings() { initBindings(null).applyBindings(null); } Proto(Object obj, Type type, BrwsrCtx context); BrwsrCtx getContext(); void acquireLock(); void acquireLock(String propName); void accessProperty(String propName); void verifyUnlocked(); void releaseLock(); void valueHasMutated(final String propName); void valueHasMutated(
        final String propName, final Object oldValue, final Object newValue
    ); void applyBindings(); void applyBindings(String id); void runInBrowser(Runnable run); void runInBrowser(final int index, final Object... args); void initTo(Collection<?> to, Object array); void extract(Object json, String[] props, Object[] values); T read(Class<T> modelClass, Object data); void loadJSON(final int index,
        String urlBefore, String urlAfter, String method,
        final Object data
    ); void loadJSON(final int index,
        String urlBefore, String urlAfter, String method,
        final Object data, final Object... params
    ); void loadJSONWithHeaders(final int index,
        String headers,
        String urlBefore, String urlAfter, String method,
        final Object data, final Object... params
    ); Object wsOpen(final int index, String url, Object data); void wsSend(Object webSocket, String url, Object data); String toString(Object data, String propName); Number toNumber(Object data, String propName); T toModel(Class<T> type, Object data); List<T> createList(String propName, int onChange, String... dependingProps); void cloneList(Collection<T> to, BrwsrCtx ctx, Collection<T> from); }
Proto { public void applyBindings() { initBindings(null).applyBindings(null); } Proto(Object obj, Type type, BrwsrCtx context); BrwsrCtx getContext(); void acquireLock(); void acquireLock(String propName); void accessProperty(String propName); void verifyUnlocked(); void releaseLock(); void valueHasMutated(final String propName); void valueHasMutated(
        final String propName, final Object oldValue, final Object newValue
    ); void applyBindings(); void applyBindings(String id); void runInBrowser(Runnable run); void runInBrowser(final int index, final Object... args); void initTo(Collection<?> to, Object array); void extract(Object json, String[] props, Object[] values); T read(Class<T> modelClass, Object data); void loadJSON(final int index,
        String urlBefore, String urlAfter, String method,
        final Object data
    ); void loadJSON(final int index,
        String urlBefore, String urlAfter, String method,
        final Object data, final Object... params
    ); void loadJSONWithHeaders(final int index,
        String headers,
        String urlBefore, String urlAfter, String method,
        final Object data, final Object... params
    ); Object wsOpen(final int index, String url, Object data); void wsSend(Object webSocket, String url, Object data); String toString(Object data, String propName); Number toNumber(Object data, String propName); T toModel(Class<T> type, Object data); List<T> createList(String propName, int onChange, String... dependingProps); void cloneList(Collection<T> to, BrwsrCtx ctx, Collection<T> from);  }