17 lines
488 B
Kotlin
17 lines
488 B
Kotlin
|
package util.jms.replicatedobject
|
||
|
|
||
|
import util.jms.requestor.ActiveMQRequestor
|
||
|
import java.lang.reflect.Proxy
|
||
|
|
||
|
class ReplicatedObjectFactory<T>(private val classType: Class<T>) {
|
||
|
fun create(queueName: String, shared: Boolean = false): T {
|
||
|
val requestor = ActiveMQRequestor(queueName, shared)
|
||
|
|
||
|
return Proxy.newProxyInstance(
|
||
|
this::class.java.classLoader,
|
||
|
arrayOf(classType),
|
||
|
ReplicatedObjectHandler(requestor)
|
||
|
) as T
|
||
|
}
|
||
|
}
|