google / google/guice

Need a LibraryModule that doesn't inherit from base environment by default

Open
#320 2 comments 0 reactions 0 assignees View on GitHub
enhancement imported Priority-Low
Dominant language
Java
Stars
12.7k
Forks
1.7k
Avg merge
11m
Merged PRs (30d)
2

Description

_From [wyrickre](https://code.google.com/u/112552539993083698321/) on January 28, 2009 18:20:44_

When writing a java library that supplies a Module for clients to install,
we need a way to make that Module only pull in specific bindings from its
environment (maybe via a requiresBinding() call).  It also needs to retain
the functionality of PrivateModules.

In other words, we need to invent LibraryModule that specifically expose()s
things and explicitly requireBinding()s other things.  Other than that,
anything else that is bound in the LibraryModule is completely hidden and
cannot interfere with Libary users.  Also, anything bound in the containing
environment cannot interfere with the bindings in LibraryModule.

PrivateModule only goes half way.  If I have a binding for Foo.class in my
application module and in the library module (even if it's not exposed),
things blow up.

_Original issue: http://code.google.com/p/google-guice/issues/detail?id=320_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.