Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * 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 org.apache.jackrabbit.mk.test;
Interface through which different org.apache.jackrabbit.mk.api.MicroKernel implementations make themselves available for use by this integration test suite.
public interface MicroKernelFixture {

    
Checks whether this fixture is currently available. For example a database-based fixture would only be available when the underlying database service is running.

Returns:
true iff the fixture is available
    boolean isAvailable();

    
Creates a new org.apache.jackrabbit.mk.api.MicroKernel cluster with as many nodes as the given array has elements. References to the cluster nodes are stored in the given array. The initial state of the cluster consists of just an empty root node and a shared journal with only a single root revision. The caller of this method should have exclusive access to the created cluster. The caller is also responsible for calling tearDownCluster(org.apache.jackrabbit.mk.api.MicroKernel[]) when the test cluster is no longer needed.

Parameters:
cluster array to which references to all nodes of the created cluster should be stored
Throws:
java.lang.Exception if the cluster could not be set up
    void setUpCluster(MicroKernel[] clusterthrows Exception;

    
Ensures that all content changes seen by one of the given cluster nodes are seen also by all the other given nodes. Used to help testing features like eventual consistency where the standard org.apache.jackrabbit.mk.api.MicroKernel API doesn't make strong enough guarantees to enable writing a test case without a potentially unbounded wait for changes to propagate across the cluster.

Parameters:
nodes cluster nodes to be synchronized
    void syncMicroKernelCluster(MicroKernel... nodes);

    
Releases resources associated with the given org.apache.jackrabbit.mk.api.MicroKernel cluster. The caller of setUpCluster(org.apache.jackrabbit.mk.api.MicroKernel[]) shall call this method once the cluster is no longer needed.

Parameters:
cluster array containing references to all nodes of the cluster
    void tearDownCluster(MicroKernel[] cluster);
New to GrepCode? Check out our FAQ X