Buggy code:
public abstract class AbstractCatalogPlanStrategy implements CatalogPlanStrategy { private static final Logger LOG = LoggerFactory . getLogger ( AbstractCatalogPlanStrategy . class ) ; private BrooklynRestAdmin admin ; private PlaceholderReplacer replacer ; private BrooklynConfig config ; @ Autowired public AbstractCatalogPlanStrategy ( BrooklynRestAdmin admin , PlaceholderReplacer replacer , BrooklynConfig config ) { } protected BrooklynRestAdmin getAdmin ( ) { } protected PlaceholderReplacer replacer ( ) { } @ Override public List < ServiceDefinition > makeServiceDefinitions ( ) { Future < List < CatalogItemSummary > > pageFuture = admin . getCatalogApplications ( config . includesAllCatalogVersions ( ) ) ; Map < String , ServiceDefinition > definitions = new HashMap < > ( ) ; Set < String > names = Sets . newHashSet ( ) ; List < CatalogItemSummary > page = ServiceUtil . getFutureValueLoggingError ( pageFuture ) ; for ( CatalogItemSummary app : page ) { try { String id = app . getSymbolicName ( ) ; String name ; AbstractCatalogPlanStrategy . LOG . info ( "Brooklyn<seq2seq4repair_space>Application={}" , app ) ; if ( config . includesAllCatalogVersions ( ) ) { <START_BUG> id = ServiceUtil . getUniqueName ( id , new java . util . HashSet ( definitions . keySet ( ) ) ) ; <END_BUG> name = ServiceUtil . getSafeName ( ( ( ( "br_" + ( app . getName ( ) ) ) + "_" ) + ( app . getVersion ( ) ) ) ) ; } else { name = ServiceUtil . getUniqueName ( ( "br_" + ( app . getName ( ) ) ) , names ) ; } String description = app . getDescription ( ) ; boolean bindable = true ; boolean planUpdatable = false ; List < Plan > plans = new ArrayList < > ( ) ; try { Iterable < Object > planYaml = Yamls . parseAll ( app . getPlanYaml ( ) ) ; Object rootElement = Iterables . getOnlyElement ( planYaml ) ; if ( ! ( isHidden ( rootElement ) ) ) { plans = makePlans ( id , rootElement ) ; } } catch ( Exception e ) { AbstractCatalogPlanStrategy . LOG . error ( "unable<seq2seq4repair_space>to<seq2seq4repair_space>make<seq2seq4repair_space>plans:<seq2seq4repair_space>Unexpected<seq2seq4repair_space>blueprint<seq2seq4repair_space>format" ) ; } if ( plans . isEmpty ( ) ) { continue ; } List < String > tags = getTags ( ) ; String iconUrl = null ; if ( ! ( Strings . isEmpty ( app . getIconUrl ( ) ) ) ) { Future < String > iconAsBase64Future = admin . getIconAsBase64 ( app . getIconUrl ( ) ) ; iconUrl = ServiceUtil . getFutureValueLoggingError ( iconAsBase64Future ) ; } Map < String , Object > metadata = getServiceDefinitionMetadata ( iconUrl , app . getPlanYaml ( ) ) ; List < String > requires = getTags ( ) ; DashboardClient dashboardClient = null ; definitions . put ( id , new ServiceDefinition ( id , name , description , bindable , planUpdatable , plans , tags , metadata , requires , dashboardClient ) ) ; } catch ( Exception e ) { AbstractCatalogPlanStrategy . LOG . error ( "unable<seq2seq4repair_space>to<seq2seq4repair_space>add<seq2seq4repair_space>catalog<seq2seq4repair_space>item:<seq2seq4repair_space>{}" , e . getMessage ( ) ) ; } } return new ArrayList ( definitions . values ( ) ) ; } private boolean isHidden ( Object rootElement ) { } protected Maybe < Map < String , Object > > getBrokerConfig ( Object rootElement ) { } private List < String > getTags ( ) { } private Map < String , Object > getServiceDefinitionMetadata ( String iconUrl , String planYaml ) { } }

Fix:
id = app . getId ( ) ;