Package com.sun.jini.test.impl.start

Source Code of com.sun.jini.test.impl.start.DestroySharedGroupCreateBadDesc$MyBogusServiceDescriptor4

/*
* 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.
*/
package com.sun.jini.test.impl.start;

import java.util.logging.Level;

import com.sun.jini.qa.harness.TestException;
import com.sun.jini.qa.harness.QATest;
import com.sun.jini.start.DestroySharedGroup;
import com.sun.jini.start.ServiceDescriptor;
import com.sun.jini.start.SharedActivatableServiceDescriptor;
import com.sun.jini.start.SharedGroup;
import net.jini.config.Configuration;
import net.jini.config.ConfigurationException;
import net.jini.config.EmptyConfiguration;
import com.sun.jini.qa.harness.QAConfig;

import java.lang.reflect.Method;
import java.rmi.RemoteException;
import java.util.Arrays;


public class DestroySharedGroupCreateBadDesc extends DestroySharedGroupCreateBaseTest {

    protected static class MyBogusServiceDescriptor
  implements ServiceDescriptor
    {
         public Object create(Configuration config) throws Exception {
       return null;
   }
    }

    protected static class MyBogusServiceDescriptor2
  extends SharedActivatableServiceDescriptor
    {

   MyBogusServiceDescriptor2(
      // Required Args
      String codebase,
      String policy,
      String classpath,
      String implClassName,
      String sharedGroupLog,
      // Optional Args,
      String[] serverConfigArgs,
      boolean restart
  {
      super(codebase, policy, classpath, implClassName,
      sharedGroupLog, serverConfigArgs, restart);
  }

         public Object create(Configuration config) throws Exception {
       throw new Exception("MyBogusServiceDescriptor2:create()");
   }
    }

    protected static class MyBogusServiceDescriptor3
  extends SharedActivatableServiceDescriptor
    {

   MyBogusServiceDescriptor3(
      // Required Args
      String codebase,
      String policy,
      String classpath,
      String implClassName,
      String sharedGroupLog,
      // Optional Args,
      String[] serverConfigArgs,
      boolean restart
  {
      super(codebase, policy, classpath, implClassName,
      sharedGroupLog, serverConfigArgs, restart);
  }

         public Object create(Configuration config) throws Exception {
       return null;
   }
    }

    protected static class MyBogusServiceDescriptor4
  extends SharedActivatableServiceDescriptor
    {

   MyBogusServiceDescriptor4(
      // Required Args
      String codebase,
      String policy,
      String classpath,
      String implClassName,
      String sharedGroupLog,
      // Optional Args,
      String[] serverConfigArgs,
      boolean restart
  {
      super(codebase, policy, classpath, implClassName,
      sharedGroupLog, serverConfigArgs, restart);
  }

         public Object create(Configuration config) throws Exception {
       SharedGroup sg =  new SharedGroup() {
     public void destroyVM() throws RemoteException {
         throw new RemoteException("BogusSharedGroup");
     }
       };
       return new SharedActivatableServiceDescriptor.Created(
     null, null, sg);
   }
    }

    public void run() throws Exception {
  Configuration config = EmptyConfiguration.INSTANCE;
  // Create bogus data
  ServiceDescriptor[] descs = new ServiceDescriptor[] {
      new MyBogusServiceDescriptor(),
      new MyBogusServiceDescriptor2("http://a/", "a", "a", "a", "a",
    null, false),
      new MyBogusServiceDescriptor3("http://a/", "a", "a", "a", "a",
    null, false),
      new MyBogusServiceDescriptor4("http://a/", "a", "a", "a", "a",
    null, false),
      null
  };
  String[] keys = new String[] {"destroy.unexpected.type",
                                "destroy.creation.exception",
              "destroy.unexpected.proxy",
              "destroy.group.exception"};
  Object[] p = new Object[] { descs, config};
  getDestroyMethod().invoke(null, p);
        if (!checkReport(Arrays.asList(keys), handler.getKeys())) {
      throw new TestException("Required keys not generated.");
  }
 
  //Negative check just for insurance
        if (checkReport(Arrays.asList(new String[] { "bogus.key" }),
      handler.getKeys()))
  {
      throw new TestException("Bogus keys generated.");
  }
    }
}
TOP

Related Classes of com.sun.jini.test.impl.start.DestroySharedGroupCreateBadDesc$MyBogusServiceDescriptor4

TOP
Copyright © 2018 www.massapi.com. 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.