FractionList { public static FractionList get() { return INSTANCE.updateAndGet( (old)->{ if ( old != null ) { return old; } return new FractionList(); }); } private  FractionList(); static FractionList get(); Collection<FractionDescriptor> getFractionDescriptors(); FractionDescriptor getFractionDescriptor(final String groupId, final String artifactId); static final String DEFAULT_GROUP_ID; }
@Test public void testMultipleGets() throws IOException { FractionList l1 = FractionList.get(); FractionList l2 = FractionList.get(); FractionList l3 = FractionList.get(); assertThat(l1).isNotNull(); assertThat(l1).isSameAs(l2); assertThat(l2).isSameAs(l3); }