docs: public Object createProxy(Class baseClassForProxy, Identity realSubjectsIdentity)
      {
          try
          {
              // the invocation handler manages all delegation stuff
              IndirectionHandler handler     = getProxyFactory().createIndirectionHandler(pbKey, realSubjectsIdentity);
  
              // the proxy simply provides the interface of the real subject
              if (VirtualProxy.class.isAssignableFrom(baseClassForProxy))
              {
                  Constructor constructor = baseClassForProxy.getDeclaredConstructor(new Class[]{ IndirectionHandler.class });
                  return constructor.newInstance(new Object[]{ handler });
              }
              else
              {                
                  return getProxyFactory().createProxy(baseClassForProxy,handler);
              }
  
              
          }
          catch (Exception ex)
          {
              throw new PersistenceBrokerException("Unable to create proxy using class:"+baseClassForProxy.getName(), ex);
          }
      }