alsoKnownAs("com.modelsolv.reprezen.gentemplates.swaggernorm.SwaggerNormalizerGenTemplate");
define(primarySource().ofType(CustomSwaggerSource.class));
define(parameter().named(OptionType.INLINE.name()).withDescription("List of model object types to inline.",
"For v2 models, allowed values are PATH, DEFINITION, PARAMETER, and RESPONSE.",
"For v3 models, allowed values are PATH, SCHEMA, RESPONSE, PARAMETER, EXAMPLE,",
"retained as references, forcing the object to be retained in the normalized model.")
.withDefault(Arrays.asList(ObjectType.PARAMETER, ObjectType.RESPONSE)));
define(parameter().named(OptionType.RETAIN.name())
.withDescription("List of model object types to retain. Allowed values are same as for INLINE.",
"As for INLINE, ALL means all types, and COMPONENTS means all but PATH.",
"your INLINE setting.")
.withDefault("ALL"));
define(parameter().named(OptionType.RETENTION_SCOPE.name())
.withDescription("Files whose unreferenced objects are eligible for retention",
"ROOTS means the top-level file and files specified in ADDITIONAL_FILES.",
"ALL means ROOTS plus any file that is loaded to resolve references.")
.withDefault(RetentionScopeType.ROOTS));
define(parameter().named(OptionType.ADDITIONAL_FILES.name())
.withDescription("List of additional files to be treated as top-level.",
"Each file is specifed as a URL; relative URLs are resolved relative to",
"the primary source model (NOT this GenTarget configuration file).")
.withDefault(Collections.emptyList()));
define(parameter().named(OptionType.HOIST.name()).withDescription(
"List of hoisting operations to perform, including MEDIA_TYPE, PARAMETER, and SECURITY_REQUIREMENT.",
"ALL means all of the above; NONE means none of them.", "This option applies only to v2 models")
.withDefault("ALL"));
define(parameter().named(OptionType.REWRITE_SIMPLE_REFS.name())