// Check that we're in proxy mode.
if (!m_isProxy) {
throw new IllegalStateException("The dependency has not enabled the `proxy` mode.");
}
Usage usage = (Usage) m_usage.get();
if (usage.m_stack == 0) { // uninitialized usage.
if (usage.m_componentStack > 0) {
// We comes from the component who didn't touch the service.
// So we initialize the usage.
createServiceObject(usage);
usage.inc(); // Start the caching, so set the stack level to 1
m_usage.set(usage); // Required by Dalvik.
if (isAggregate()) {
Object obj = usage.m_object;
if (obj instanceof Set) {
List<Object> list = new ArrayList<Object>();