Package org.apache.derby.iapi.services.monitor

Examples of org.apache.derby.iapi.services.monitor.PersistentService


  */
  private boolean findProviderAndStartService(String name,
              Properties properties, boolean bootTime)
    throws StandardException {

    PersistentService actualProvider = null;

    Properties serviceProperties = null;
    String serviceName = null;

    // see if the name already includes a service type
    int colon = name.indexOf(':');
    if (colon != -1) {
      actualProvider = findProviderFromName(name, colon);

      // if null is returned here then its a sub-sub protocol/provider
      // that we don't understand. Attempt to load it as an untyped name.
      // If we have a protool
      // that we do understand and we can't open the service we will
      // throw an exception
      if (actualProvider != null) {

        serviceName = actualProvider.getCanonicalServiceName(name);
        if (serviceName == null)
          return true// we understand the type, but the service does not exist

        serviceProperties =
          actualProvider.getServiceProperties(serviceName, properties);

        if (serviceProperties == null)
          return true; // we understand the type, but the service does not exist

        // see if this service does not want to be auto-booted.
        if (bootTime && Boolean.valueOf(serviceProperties.getProperty(Property.NO_AUTO_BOOT)).booleanValue())
          return true;

        startProviderService(actualProvider, serviceName, serviceProperties);
        return true; // we understand the type
      }
    }

    StandardException savedMse = null;

    for (Enumeration e = new ProviderEnumeration( properties); e.hasMoreElements(); ) {

      PersistentService provider = (PersistentService) e.nextElement();

      String sn = provider.getCanonicalServiceName(name);
      if (sn == null)
        continue;

      Properties p = null;
      try {
        p = provider.getServiceProperties(sn, properties);
        // service does not exist.
        if (p == null)
          continue;

      } catch (StandardException mse) {
View Full Code Here


    {
        if( subSubProtocol == null)
            return null;
        if( serviceProviders != null)
        {
            PersistentService ps = (PersistentService) serviceProviders.get( subSubProtocol);
            if( ps != null)
                return ps;
        }
        return getPersistentService(subSubProtocol);
    } // end of getServiceProvider
View Full Code Here

                // service properties to indicate that database
                // is encrypted and also users can specify it as URL attribute
                // to encrypt and existing database.
                              
                String name = Monitor.getMonitor().getServiceName(this);
                PersistentService ps = Monitor.getMonitor().getServiceType(this);
                String canonicalName = ps.getCanonicalServiceName(name);
                Properties serviceprops = ps.getServiceProperties(canonicalName,
                                                                  (Properties)null);
                dataEncryption = serviceprops.getProperty(Attribute.DATA_ENCRYPTION);
                boolean encryptedDatabase = Boolean.valueOf(dataEncryption).booleanValue();

                if (!encryptedDatabase  && databaseEncrypted) {
View Full Code Here

    UUIDFactory uf = Monitor.getMonitor().getUUIDFactory();

    identifier = uf.createUUID();

        PersistentService ps = Monitor.getMonitor().getServiceType(this);

        try
        {
            storageFactory =
            ps.getStorageFactoryInstance(
                true,
                dataDirectory,
                startParams.getProperty(
                    Property.STORAGE_TEMP_DIRECTORY,
                    PropertyUtil.getSystemProperty(
View Full Code Here

  private boolean handleServiceType(
    String      type)
    {
        try
        {
            PersistentService ps =
                Monitor.getMonitor().getServiceProvider(type);
            return ps != null && ps.hasStorageFactory();
        }
        catch (StandardException se)
        {
            return false;
        }
View Full Code Here

            StorageFile logdir = logFactory.getLogDirectory();
           
            try
            {
                String name = Monitor.getMonitor().getServiceName(this);
                PersistentService ps =
                    Monitor.getMonitor().getServiceType(this);
                String fullName = ps.getCanonicalServiceName(name);
                Properties prop =
                    ps.getServiceProperties(fullName, (Properties)null);

                StorageFile defaultLogDir =
                    storageFactory.newStorageFile(
                        LogFactory.LOG_DIRECTORY_NAME);

                if (!logdir.equals(defaultLogDir)) 
                {
                    prop.remove(Attribute.LOG_DEVICE);
                    if (SanityManager.DEBUG)
                    {
                        SanityManager.ASSERT(
                            prop.getProperty(Attribute.LOG_DEVICE) == null,
                            "cannot get rid of logDevice property");
                    }

                    logHistory(historyFile,
                               MessageService.getTextMessage(
                               MessageId.STORE_EDITED_SERVICEPROPS));
                }
           
                // save the service properties into the backup.
                ps.saveServiceProperties(backupcopy.getPath(), prop, false);

            }
            catch(StandardException se)
            {
                logHistory(
View Full Code Here

        }
        else
        {
            try
            {
                PersistentService ps = Monitor.getMonitor().getServiceType(this);
                logStorageFactory = (WritableStorageFactory) ps.getStorageFactoryInstance( false, logDevice, null, null);
            }
            catch( IOException ioe)
            {
                if( SanityManager.DEBUG)
                    SanityManager.NOTREACHED();
View Full Code Here

    TopService ts = findTopService(serviceModule);

    if (ts == null)
      return null;

    PersistentService provider = ts.getServiceType();
    if (provider == null)
      return null;

    String serviceName = ts.getKey().getIdentifier();

    Properties properties = provider.getServiceProperties(serviceName, (Properties) null);

    properties = new UpdateServiceProperties(provider, serviceName, properties, true);

    return setLocale(properties, userDefinedLocale);
View Full Code Here

  public Object createPersistentService(String factoryInterface, String name, Properties properties)
    throws StandardException {


    PersistentService provider = findProviderForCreate(name);
    if (provider == null) {
      throw StandardException.newException(SQLState.PROTOCOL_UNKNOWN, name);
    }

    return bootService(provider, factoryInterface, name, properties, true);
View Full Code Here

      
    */
    public void removePersistentService(String name)
         throws StandardException
    {
        PersistentService provider=null;
    provider = findProviderForCreate(name);
        String serviceName = provider.getCanonicalServiceName(name);
        boolean removed = provider.removeServiceRoot(serviceName);
        if (removed == false)
      throw StandardException.newException(SQLState.SERVICE_DIRECTORY_REMOVE_ERROR,serviceName);
    }
View Full Code Here

TOP

Related Classes of org.apache.derby.iapi.services.monitor.PersistentService

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.