@@ -2270,17 +2270,31 @@ private void qualifiersMethod(ClassModel.Builder classModel, DescribedService se
22702270
22712271 private void scopeMethod (ClassModel .Builder classModel , DescribedService service ) {
22722272 // TypeName scope()
2273- classModel .addField (scopesField -> scopesField
2274- .isStatic (true )
2275- .isFinal (true )
2276- .name ("SCOPE" )
2277- .type (TypeNames .TYPE_NAME )
2278- .addContentCreate (service .scope ()));
2273+ TypeName scope = service .scope ();
22792274
2280- classModel .addMethod (scopeMethod -> scopeMethod .name ("scope" )
2281- .addAnnotation (Annotations .OVERRIDE )
2282- .returnType (TypeNames .TYPE_NAME )
2283- .addContentLine ("return SCOPE;" ));
2275+ if (scope .packageName ().equals (INJECTION_SINGLETON .packageName ())
2276+ && scope .enclosingNames ().size () == 1 && scope .enclosingNames ().getFirst ().equals ("Injection" )) {
2277+ // only method
2278+ classModel .addMethod (scopeMethod -> scopeMethod .name ("scope" )
2279+ .addAnnotation (Annotations .OVERRIDE )
2280+ .returnType (TypeNames .TYPE_NAME )
2281+ .addContent ("return " )
2282+ .addContent (scope )
2283+ .addContentLine (".TYPE;" ));
2284+ } else {
2285+ // field and method
2286+ classModel .addField (scopesField -> scopesField
2287+ .isStatic (true )
2288+ .isFinal (true )
2289+ .name ("SCOPE" )
2290+ .type (TypeNames .TYPE_NAME )
2291+ .addContentCreate (scope ));
2292+
2293+ classModel .addMethod (scopeMethod -> scopeMethod .name ("scope" )
2294+ .addAnnotation (Annotations .OVERRIDE )
2295+ .returnType (TypeNames .TYPE_NAME )
2296+ .addContentLine ("return SCOPE;" ));
2297+ }
22842298 }
22852299
22862300 private void weightMethod (ClassModel .Builder classModel , DescribedService service ) {
0 commit comments