मुझे एक कक्षा को दो इंटरफेस के कार्यान्वयन के रूप में बांधने की आवश्यकता है। और इसे सिंगलटन गुंजाइश में बांधना चाहिए।Google Guice के साथ कुछ इंटरफेस में एक कार्यान्वयन कैसे बाध्य करें?
मैंने क्या किया है:
bind(FirstSettings.class).
to(DefaultSettings.class).
in(Singleton.class);
bind(SecondSettings.class).
to(DefaultSettings.class).
in(Singleton.class);
लेकिन, जाहिर है, यह दो अलग-अलग विविधताएं के सृजन की ओर जाता है, क्योंकि वे विभिन्न कुंजियों से आबद्ध कर रहे हैं।
मेरा सवाल यह है कि मैं यह कैसे कर सकता हूं?
public class DefaultSettings implements FirstSettings, SecondSettings
{
}
मान लीजिए कि आप एक वर्ग EngineA
और EngineB
public class EngineA
{
@Inject
private FirstSettings settings;
}
public class EngineB
{
@Inject
private SecondSettings settings;
}
करते हैं और आप एक ही इंजेक्षन करना चाहते हैं:
सबसे सुरुचिपूर्ण समाधान! –