diff options
Diffstat (limited to 'id/server')
| -rw-r--r-- | id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/metadata/MOAMetadataProvider.java | 13 | 
1 files changed, 11 insertions, 2 deletions
| diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/metadata/MOAMetadataProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/metadata/MOAMetadataProvider.java index 5c2778b89..b2597c3cb 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/metadata/MOAMetadataProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/metadata/MOAMetadataProvider.java @@ -142,8 +142,17 @@ public class MOAMetadataProvider extends SimpleMOAMetadataProvider  	@Override -	public boolean refreshMetadataProvider(String entityID) { -		try { +	public synchronized boolean refreshMetadataProvider(String entityID) { +		try {			 +			//check if metadata provider is already loaded +			try { +				if (internalProvider.getEntityDescriptor(entityID) != null) +					return true; +				 +			} catch (MetadataProviderException e) {} +			 +			 +			//reload metadata provider   			IOAAuthParameters oaParam =   					AuthConfigurationProviderFactory.getInstance().getOnlineApplicationParameter(entityID);  			if (oaParam != null) { | 
