LastChangeNumberVirtualAttributeProvider.java revision e371bf13d3f899f1de594880fafe67b990d65899
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at
* trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
* add the following below this CDDL HEADER, with the fields enclosed
* by brackets "[]" replaced with your own identifying information:
* Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*
*
* Copyright 2009 Sun Microsystems, Inc.
* Portions Copyright 2011-2013 ForgeRock AS
*/
/**
* This class implements a virtual attribute provider that allows administrators
* to define their own values that will be inserted into any entry that matches
* the criteria defined in the virtual attribute rule. This can be used to
* provide functionality like Class of Service (CoS) in the Sun Java System
* Directory Server.
*/
public class LastChangeNumberVirtualAttributeProvider
{
/**
* Creates a new instance of this member virtual attribute provider.
*/
{
super();
// All initialization should be performed in the
// initializeVirtualAttributeProvider method.
}
/**
* {@inheritDoc}
*/
@Override()
public void initializeVirtualAttributeProvider(
{
// No initialization required
}
/**
* {@inheritDoc}
*/
@Override()
public void finalizeVirtualAttributeProvider()
{
//
}
/**
* {@inheritDoc}
*/
@Override()
public boolean isMultiValued()
{
return false;
}
/**
* {@inheritDoc}
*/
{
// There's only a value for the rootDSE, i.e. the Null DN.
}
/**
* {@inheritDoc}
*/
@Override()
{
try
{
{
// Set a list of excluded domains (also exclude 'cn=changelog' itself)
}
}
catch(Exception e)
{
// We got an error computing the first change number.
// Rather than returning 0 which is no change, return -1 to
// indicate the error.
last = "-1";
}
}
/**
* {@inheritDoc}
*/
@Override()
boolean isPreIndexed)
{
// We do not allow search for the lastChangeNumber. It's a read-only
// attribute of the RootDSE.
return false;
}
/**
* {@inheritDoc}
*/
@Override()
{
}
/**
* {@inheritDoc}
*/
public boolean isConfigurationChangeAcceptable(
{
return false;
}
/**
* {@inheritDoc}
*/
{
}
}