// JRE #6456938: Class.cast currently throws an exception without details.
thrownewClassCastException("Instance of "+instance.getClass()+" unassignable to "+service);
}
setLookups(Lookups.singleton(instance));
synchronized(LOCK){
serviceNames=null;
}
}catch(Exceptionx){
Exceptions.attachMessage(x,"while loading from "+attrs);
Exceptions.printStackTrace(x);
}finally{
synchronized(LOCK){
LOCK[0]=null;
LOCK.notifyAll();
}
}
}
privatevoidsafeToLoad(){
ThreadLocal<Member>memberRef;
synchronized(INSIDE_LOAD){
memberRef=INSIDE_LOAD.get(lkp);
}
if(memberRef==null){
return;
}
Membermember=memberRef.get();
if(member!=null&&WARNED.add(member)){
LOG.log(Level.WARNING,null,newIllegalStateException("may not call Project.getLookup().lookup(...) inside "+member.getName()+" registered under @ProjectServiceProvider"));
}
}
@Override
publicStringtoString(){
returnProv.this.toString();
}
};
publicLookupcreateAdditionalLookup(Lookuplkp){
LazyLookupresult=newLazyLookup(attrs,lkp);
if(LOG.isLoggable(Level.FINE)){
LOG.log(
Level.FINE,
"Additional lookup created: {0} service class: {1} for base lookup: {2}",//NOI18N
newObject[]{
Level.FINE,
"Additional lookup created: {0} service class: {1} for base lookup: {2}",//NOI18N
LazyLookupProviders.LOG.log(Level.WARNING,null,newIllegalStateException("may not call Project.getLookup().lookup(...) inside "+member.getName()+" registered under @ProjectServiceProvider"));