草庐IT

assisted-inject

全部标签

swift - 有没有比这更好的方法在 Swift 中进行依赖注入(inject)?

swift的新手,我试图创建一个服务注册表:classServiceRegistry{staticvarinstance=ServiceRegistry()privatevarregistry=[String:AnyObject]()privateinit(){}funcregister(key:T,value:AnyObject){self.registry["\(T.self)"]=value}funcget(_:T)->AnyObject?{returnregistry["\(T.self)"]}}但不是super友好:注册:ServiceRegistry.instance.re

java - 如何在生产中使用 CDI 测试类时注入(inject)模拟

我在JavaSE环境中使用WELD-SE进行依赖注入(inject)编程。因此类的依赖看起来像这样:publicclassProductionCodeClass{@InjectprivateDependencyClassdependency;}在为此类编写单元测试时,我正在为DependencyClass创建一个模拟,因为我不想为我运行的每个测试启动一个完整的CDI环境,所以我“注入(inject)”了模拟手动:importstaticTestSupport.setField;importstaticorg.mockito.Mockito.*;publicclassProduction

java - 使用 Dagger 2 进行 Presenter 注入(inject)

我刚开始使用Dagger2,我在网上发现了数千个指南,每个指南都有不同的实现,我现在有点困惑。所以基本上这就是我现在写的:AppModule.java:@ModulepublicclassAppModule{ApplicationmApplication;publicAppModule(Applicationapplication){mApplication=application;}@Provides@SingletonApplicationprovidesApplication(){returnmApplication;}}数据模块.java:@ModulepublicclassD

java - 在命令行中使用 javac 编译时出现 "package javax.inject does not exist"错误

我正在迈出学习JSF的第一步。我找到了一本有趣的书,叫做“CoreJavaServerFacesThirdEdition”。尝试编译第一个示例,您可以从以下地址下载源代码:http://horstmann.com/corejsf/.当我在命令行中输入以下内容时javacUserBean.java我收到错误:packagejavax.injectdoesnotexistpackagejavax.enterprise.contextdoenotexist我已经下载了JavaEE、Ant和GlassFish。这是我的命令行截图:C:\JSF-Tutorial\corejsf3-example

java - 将模拟注入(inject) Spring MockMvc WebApplicationContext

我正在努力测试(通过JUnit4和SpringMockMvc)使用Spring-boot的REST服务适配器。适配器只是将向它发出的请求传递给另一个REST服务(使用自定义RestTemplate)并将额外的数据附加到响应中。我想运行MockMvc测试来执行Controller集成测试,但想用模拟覆盖Controller中的RestTemplate以允许我预定义第三个方REST响应并防止它在每次测试期间被击中。我已经能够通过实例化一个MockMvcBuilders.standAloneSetup()并将其传递给要使用此post中列出的模拟注入(inject)进行测试的Controlle

java - flink - 使用 Dagger 注入(inject) - 不可序列化?

我正在使用Flink(最新通过git)从kafka流式传输到cassandra。为了简化单元测试,我通过Dagger添加了依赖注入(inject)。ObjectGraph似乎设置正确,但“内部对象”被Flink标记为“不可序列化”。如果我直接包含这些对象,它们就会起作用-那有什么区别呢?有问题的类实现了MapFunction和@Inject一个用于cassandra的模块和一个用于读取配置文件的模块。有没有办法构建它以便我可以使用后期绑定(bind),或者Flink是否使这成为不可能?编辑:fwiw-依赖注入(inject)(通过Dagger)和RichMapFunction不能共存。

java - 构建器模式与依赖注入(inject)(例如通过 Guice)

我正在开发一个简单的树结构数据库,我通常通过构建器(构建器模式)设置依赖项或可选设置。现在我不确定何时使用Guice,何时使用Builder模式以及何时使用静态工厂方法而不是构造函数本身。我读过EffectiveJava好几遍,我认为它至少提到了很多不公开构造函数的优点。是时候重读;-)那么,您知道哪些案例可以清楚地区分吗?我不应该公开构造函数吗?因此,例如在每种情况下都写publicstaticFoogetInstance(...){returnnewFoo(...)}? 最佳答案 我坚信您不需要为所有使用依赖注入(inject)

java - 在调用另一个方法之前注入(inject)一个 Java 方法

我正在使用ASM并想重写如下内容:someMethod().targetMethod(args...)到:someMethod().injectedMethod(arg).targetMethod(args...)问题是我不知道之前的方法是什么,我只知道目标方法(所以找到someMethod()并在之后注入(inject)不是一个选项)。我还有许多版本的目标方法,我希望它使用不同的参数集。使用ASM我可以很容易地找到目标方法调用,但不幸的是此时的操作数堆栈是:[argN,...,arg1,instance,...]虽然我可以计算出实例的深度,但我没有可以注入(inject)的字节码来读

java - 如何将一些类的创建从 Guice 注入(inject)器委托(delegate)给另一个工厂?

例如,RESTEasy的ResteasyWebTarget类有一个方法proxy(Classclazz),就像Injector的getInstance(Classclazz).有没有办法告诉Guice某些类的创建应该委托(delegate)给某个实例?我的目标是Guice的以下行为:当注入(inject)器被要求提供类A的新实例时,尝试实例化它;如果无法实例化,则请求另一个对象(例如ResteasyWebTarget实例)来实例化该类。我想写一个这样的模块:@Overrideprotectedvoidconfigure(){StringapiUrl="https://api.examp

java - Guice:如何根据(动态网络属性)在运行时更改注入(inject)

以下是我面临的问题的近似值。假设我们有一个带有一些规则的密码validator。publicinterfaceRuleChecker{//Checksforapasswordstrenght,returns10//forstrongor0forsoftpassword.intcheck(Stringpass);}然后我们有几个实现,我们的服务只会接受超过8分的密码。publicclassNoCheckimplementsRuleChecker{publicintcheck(Stringpass){return10;}}publicclassLengthCheckimplementsRu