Code Monkey home page Code Monkey logo

proxify's People

Contributors

ecozoic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

gvsurenderreddy

proxify's Issues

Settings Extrapolation

Proxify should be able to take in a settings object that defines the keys, traps, and log level that the proxy operates on. This should be an optional second parameter to the proxify function that has default values if none are provided.

The settings object should also have multiple ways of describing the proxies behavior: general, by-key, and by-key-by-trap. Due to the various ways that the settings for the proxy can be described, the settings object needs to be normalized when passed in so that all future uses can program against a common model.

Replace hard dependency on Logger with an event emitter in the proxy handlers

In the proxy handlers, we are currently calling logger directly.

We should instead emit an event that the logger is subscribed to.

This would:
a) allow multiple listeners b/c of the pub/sub model
b) lead the way for consumers to provide their own custom listeners when configuring a proxy
c) prevent performance issues b/c event notification should be async

Ideally I'd like to use Node's EventEmitter, but EventEmitter is synchronous. See here. Might require some investigation...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.