view src/org/dancres/blitz/remote/perf/ProxyFactory.java @ 0:3dc0c5604566

Initial checkin of blitz 2.0 fcs - no installer yet.
author Dan Creswell <dan.creswell@gmail.com>
date Sat, 21 Mar 2009 11:00:06 +0000
parents
children
line wrap: on
line source

package org.dancres.blitz.remote.perf;

import net.jini.id.Uuid;

import net.jini.core.constraint.RemoteMethodControl;

import org.dancres.blitz.lease.SpaceUID;

/**
   This class instantiates appropriate proxy instances of the given types
   based on whether we are running in secure mode or not (secure mode is
   defined to be active when our exported stub reference supports
   RemoteMethodControl which will be the result of config file containing
   an appropriate Exporter setup).
 */
class ProxyFactory {
    private static boolean isSecure(Server aStub) {
        return (aStub instanceof RemoteMethodControl);
    }

    static LeaseImpl newLeaseImpl(Server aStub, Uuid aUuid,
                                  FakeUID aUID, long anExpiration) {
        if (isSecure(aStub))
            return new ConstrainableLeaseImpl(aStub, aUuid, aUID,
                                              anExpiration);
        else
            return new LeaseImpl(aStub, aUuid, aUID, anExpiration);
    }
}