blob: 11a28269191028094659957e2b70c995560b3b43 [file] [log] [blame]
/*
* Copyright (c) 2011, 2012 Eike Stepper (Berlin, Germany) and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Eike Stepper - initial API and implementation
*/
package org.eclipse.emf.cdo.internal.workspace;
import org.eclipse.emf.cdo.common.util.CDOCommonUtil;
import org.eclipse.emf.cdo.spi.workspace.InternalCDOWorkspace;
import org.eclipse.emf.cdo.workspace.CDOWorkspace;
import org.eclipse.net4j.util.properties.DefaultPropertyTester;
import org.eclipse.net4j.util.properties.IProperties;
import org.eclipse.net4j.util.properties.Properties;
import org.eclipse.net4j.util.properties.Property;
/**
* @author Eike Stepper
*/
public class WorkspaceProperties extends Properties<CDOWorkspace>
{
public static final IProperties<CDOWorkspace> INSTANCE = new WorkspaceProperties();
private WorkspaceProperties()
{
super(CDOWorkspace.class);
add(new Property<CDOWorkspace>("open", //$NON-NLS-1$
"Open", "Whether this workspace is open or not.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return !workspace.isClosed();
}
});
add(new Property<CDOWorkspace>("branchPath", //$NON-NLS-1$
"Branch", "The remote branch of this workspace.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return workspace.getBranchPath();
}
});
add(new Property<CDOWorkspace>("timeStamp", //$NON-NLS-1$
"Time Stamp", "The time stamp of this workspace.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return CDOCommonUtil.formatTimeStamp(workspace.getTimeStamp());
}
});
add(new Property<CDOWorkspace>("fixed", //$NON-NLS-1$
"Fixed", "Whether this workspace is fixed to a specific remote time stamp or not.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return workspace.isFixed();
}
});
add(new Property<CDOWorkspace>("dirty", //$NON-NLS-1$
"Dirty", "Whether this workspace is locally dirty or not.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return workspace.isDirty();
}
});
add(new Property<CDOWorkspace>("idGenerationLocation", //$NON-NLS-1$
"ID Generation Location", "One of STORE, CLIENT.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return ((InternalCDOWorkspace)workspace).getIDGenerationLocation();
}
});
add(new Property<CDOWorkspace>("base", //$NON-NLS-1$
"Base", "The base of this workspace.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return ((InternalCDOWorkspace)workspace).getBase();
}
});
add(new Property<CDOWorkspace>("local", //$NON-NLS-1$
"Local", "The local repository of this workspace.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return ((InternalCDOWorkspace)workspace).getLocalRepository();
}
});
add(new Property<CDOWorkspace>("remote", //$NON-NLS-1$
"Remote", "The remote repository of this workspace.")
{
@Override
protected Object eval(CDOWorkspace workspace)
{
return ((InternalCDOWorkspace)workspace).getRemoteSessionConfigurationFactory();
}
});
}
public static void main(String[] args)
{
new Tester().dumpContributionMarkup();
}
/**
* @author Eike Stepper
*/
public static final class Tester extends DefaultPropertyTester<CDOWorkspace>
{
public static final String NAMESPACE = "org.eclipse.emf.cdo.workspace";
public Tester()
{
super(NAMESPACE, INSTANCE);
}
}
}