FELIX-3645: Tests which reproduces the "Could not obtain lock in 5000 milliseconds" Exception.


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1379968 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/scr/src/test/resources/integration_test_component_concurrency.xml b/scr/src/test/resources/integration_test_component_concurrency.xml
new file mode 100644
index 0000000..aeb7c7f
--- /dev/null
+++ b/scr/src/test/resources/integration_test_component_concurrency.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+	license agreements. See the NOTICE file distributed with this work for additional 
+	information regarding copyright ownership. The ASF licenses this file to 
+	you under the Apache License, Version 2.0 (the "License"); you may not use 
+	this file except in compliance with the License. You may obtain a copy of 
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+	by applicable law or agreed to in writing, software distributed under the 
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+	OF ANY KIND, either express or implied. See the License for the specific 
+	language governing permissions and limitations under the License. -->
+<components xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0">
+	<scr:component
+		name='org.apache.felix.scr.integration.components.concurrency.A'
+		factory='AFactory' activate='start'>
+		<implementation
+			class='org.apache.felix.scr.integration.components.concurrency.A' />
+		<reference name='b'
+			interface='org.apache.felix.scr.integration.components.concurrency.B'
+			bind='bindB' cardinality='0..n' policy='dynamic' />
+	</scr:component>
+
+	<scr:component
+		name='org.apache.felix.scr.integration.components.concurrency.B'>
+		<implementation
+			class='org.apache.felix.scr.integration.components.concurrency.B' />
+		<service>
+			<provide interface='org.apache.felix.scr.integration.components.concurrency.B' />
+		</service>
+		<reference name='c'
+			interface='org.apache.felix.scr.integration.components.concurrency.C'
+			bind='bindC' />
+	</scr:component>
+
+	<scr:component
+		name='org.apache.felix.scr.integration.components.concurrency.C'
+		factory='CFactory'>
+		<implementation
+			class='org.apache.felix.scr.integration.components.concurrency.C' />
+		<service>
+			<provide interface='org.apache.felix.scr.integration.components.concurrency.C' />
+		</service>
+	</scr:component>
+
+	<scr:component enabled='false'
+		name='org.apache.felix.scr.integration.components.concurrency.AFactory'
+		activate='activate' deactivate='deactivate'>
+		<implementation
+			class='org.apache.felix.scr.integration.components.concurrency.AFactory' />
+		<reference name='aFactory'
+			interface='org.osgi.service.component.ComponentFactory' bind='bindAFactory'
+			target='(component.factory=AFactory)' />
+	</scr:component>
+
+	<scr:component enabled='false'
+		name='org.apache.felix.scr.integration.components.concurrency.CFactory'
+		activate='activate' deactivate='deactivate'>
+		<implementation
+			class='org.apache.felix.scr.integration.components.concurrency.CFactory' />
+		<reference name='cFactory'
+			interface='org.osgi.service.component.ComponentFactory' bind='bindCFactory'
+			target='(component.factory=CFactory)' />
+	</scr:component>
+</components>