Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSusan Franklin2008-10-15 21:23:47 +0000
committerSusan Franklin2008-10-15 21:23:47 +0000
commit16070cf6824643cb81649e6efd4cc6a96c36f410 (patch)
tree81aff09ceba48cdb718a162e596e23735ae77d63 /bundles
parentbcf6b8565f6ca772421b53f5a996f91b0524f3cd (diff)
downloadrt.equinox.p2-16070cf6824643cb81649e6efd4cc6a96c36f410.tar.gz
rt.equinox.p2-16070cf6824643cb81649e6efd4cc6a96c36f410.tar.xz
rt.equinox.p2-16070cf6824643cb81649e6efd4cc6a96c36f410.zip
Bug 250188 - [ui] [admin] artifact and profiles view not honoring prefs dynamically
Diffstat (limited to 'bundles')
-rw-r--r--bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ArtifactRepositoriesView.java2
-rw-r--r--bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProfilesView.java2
-rw-r--r--bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvAdminUIActivator.java6
-rw-r--r--bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvView.java9
-rw-r--r--bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/RepositoriesView.java7
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/DefaultQueryProvider.java12
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/model/RootElement.java54
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/QueryableArtifactRepositoryManager.java8
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/ArtifactRepositories.java9
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/MetadataRepositories.java31
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/Profiles.java9
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/policy/IUViewQueryContext.java12
12 files changed, 105 insertions, 56 deletions
diff --git a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ArtifactRepositoriesView.java b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ArtifactRepositoriesView.java
index 9e1ae8a0f..7bdcdba6f 100644
--- a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ArtifactRepositoriesView.java
+++ b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ArtifactRepositoriesView.java
@@ -38,7 +38,7 @@ public class ArtifactRepositoriesView extends RepositoriesView {
}
protected Object getInput() {
- return new ArtifactRepositories();
+ return new ArtifactRepositories(ProvAdminUIActivator.getDefault().getPolicy());
}
protected String getAddCommandLabel() {
diff --git a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProfilesView.java b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProfilesView.java
index 1db355cb3..f22aa63ac 100644
--- a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProfilesView.java
+++ b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProfilesView.java
@@ -183,7 +183,7 @@ public class ProfilesView extends ProvView {
}
protected Object getInput() {
- return new Profiles();
+ return new Profiles(ProvAdminUIActivator.getDefault().getPolicy());
}
ProfileChooser getProfileChooser() {
diff --git a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvAdminUIActivator.java b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvAdminUIActivator.java
index 8997efba8..c928d9a60 100644
--- a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvAdminUIActivator.java
+++ b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvAdminUIActivator.java
@@ -129,7 +129,7 @@ public class ProvAdminUIActivator extends AbstractUIPlugin {
queryContext.setMetadataRepositoryFlags(IRepositoryManager.REPOSITORIES_ALL);
}
queryContext.setShowLatestVersionsOnly(getPreferenceStore().getBoolean(PreferenceConstants.PREF_COLLAPSE_IU_VERSIONS));
-
+ queryContext.setUseCategories(getPreferenceStore().getBoolean(PreferenceConstants.PREF_USE_CATEGORIES));
}
void initializePolicy() {
@@ -150,7 +150,7 @@ public class ProvAdminUIActivator extends AbstractUIPlugin {
// TODO would be nice if the profile chooser dialog let you
// create a new profile
ProvElementContentProvider provider = new ProvElementContentProvider();
- if (provider.getElements(new Profiles()).length == 0) {
+ if (provider.getElements(new Profiles(getPolicy())).length == 0) {
AddProfileDialog dialog = new AddProfileDialog(shell, new String[0]);
if (dialog.open() == Window.OK) {
return dialog.getAddedProfileId();
@@ -161,7 +161,7 @@ public class ProvAdminUIActivator extends AbstractUIPlugin {
ListDialog dialog = new ListDialog(shell);
dialog.setTitle(ProvAdminUIMessages.MetadataRepositoriesView_ChooseProfileDialogTitle);
dialog.setLabelProvider(new ProvElementLabelProvider());
- dialog.setInput(new Profiles());
+ dialog.setInput(new Profiles(getPolicy()));
dialog.setContentProvider(provider);
dialog.open();
Object[] result = dialog.getResult();
diff --git a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvView.java b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvView.java
index 156d2b79e..d8310405c 100644
--- a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvView.java
+++ b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/ProvView.java
@@ -125,7 +125,7 @@ abstract class ProvView extends ViewPart {
undoRedoGroup = new UndoRedoActionGroup(getSite(), ProvUI.getProvisioningUndoContext(), true);
refreshAction = new RefreshAction(viewer, viewer.getControl()) {
protected void refresh() {
- refreshAll();
+ refreshAll(true);
}
};
refreshAction.setToolTipText(ProvAdminUIMessages.ProvView_RefreshCommandTooltip);
@@ -157,7 +157,7 @@ abstract class ProvView extends ViewPart {
public void propertyChange(PropertyChangeEvent event) {
if (getVisualProperties().contains(event.getProperty())) {
ProvAdminUIActivator.getDefault().initializePolicy();
- ProvView.this.refreshAll();
+ ProvView.this.refreshAll(false);
}
}
@@ -223,9 +223,10 @@ abstract class ProvView extends ViewPart {
return list;
}
- final void refreshAll() {
+ final void refreshAll(boolean refreshModel) {
// Refresh the underlying elements
- refreshUnderlyingModel();
+ if (refreshModel)
+ refreshUnderlyingModel();
// We then reset the input to ensure that anything the content providers
// are caching gets reset also. The net effect is that everything
// will get queried again.
diff --git a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/RepositoriesView.java b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/RepositoriesView.java
index 23766c54a..f01d7114a 100644
--- a/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/RepositoriesView.java
+++ b/bundles/org.eclipse.equinox.p2.ui.admin/src/org/eclipse/equinox/internal/p2/ui/admin/RepositoriesView.java
@@ -82,7 +82,11 @@ abstract class RepositoriesView extends ProvView {
protected void addListeners() {
super.addListeners();
- listener = new StructuredViewerProvisioningListener(viewer, getListenerEventTypes());
+ listener = new StructuredViewerProvisioningListener(viewer, getListenerEventTypes()) {
+ protected void refreshAll() {
+ RepositoriesView.this.refreshAll(false);
+ }
+ };
ProvUI.addProvisioningListener(listener);
}
@@ -183,7 +187,6 @@ abstract class RepositoriesView extends ProvView {
protected List getVisualProperties() {
List list = super.getVisualProperties();
list.add(PreferenceConstants.PREF_HIDE_SYSTEM_REPOS);
- list.add(PreferenceConstants.PREF_COLLAPSE_IU_VERSIONS);
return list;
}
}
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/DefaultQueryProvider.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/DefaultQueryProvider.java
index 011ad8d1e..e5c7dc75a 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/DefaultQueryProvider.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/DefaultQueryProvider.java
@@ -11,7 +11,6 @@
package org.eclipse.equinox.internal.p2.ui;
import java.net.URI;
-import java.net.URL;
import org.eclipse.equinox.internal.p2.ui.model.*;
import org.eclipse.equinox.internal.p2.ui.query.*;
import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException;
@@ -63,7 +62,7 @@ public class DefaultQueryProvider extends QueryProvider {
queryable = new QueryableArtifactRepositoryManager(context.getArtifactRepositoryFlags());
return new ElementQueryDescriptor(queryable, null, new Collector() {
public boolean accept(Object object) {
- if (object instanceof URL)
+ if (object instanceof URI)
return super.accept(new ArtifactRepositoryElement(element, (URI) object));
return true;
}
@@ -77,6 +76,7 @@ public class DefaultQueryProvider extends QueryProvider {
ElementQueryDescriptor installedQueryDescriptor = null;
boolean showLatest = context.getShowLatestVersionsOnly();
boolean hideInstalled = context.getHideAlreadyInstalled();
+ boolean useCategories = context.getUseCategories();
String profileId = context.getInstalledProfileId();
if (hideInstalled && profileId != null) {
try {
@@ -101,18 +101,16 @@ public class DefaultQueryProvider extends QueryProvider {
// Showing child IU's of a group of repositories, or of a single repository
if (element instanceof MetadataRepositories || element instanceof MetadataRepositoryElement) {
- if (context.getViewType() == IUViewQueryContext.AVAILABLE_VIEW_FLAT) {
+ if (context.getViewType() == IUViewQueryContext.AVAILABLE_VIEW_FLAT || !context.getUseCategories()) {
AvailableIUCollector collector;
if (showLatest)
- collector = new LatestIUVersionElementCollector(queryable, element, true);
+ collector = new LatestIUVersionElementCollector(queryable, element, false);
else
- collector = new AvailableIUCollector(queryable, element, true);
+ collector = new AvailableIUCollector(queryable, element, false);
if (hideInstalled && installedQueryDescriptor != null)
collector.hideInstalledIUs(installedQueryDescriptor);
return new ElementQueryDescriptor(queryable, topLevelQuery, collector);
}
-
- // Assume category view if it wasn't flat.
// Installed content not a concern for collecting categories
return new ElementQueryDescriptor(queryable, categoryQuery, new CategoryElementCollector(queryable, element, true));
}
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/model/RootElement.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/model/RootElement.java
new file mode 100644
index 000000000..3332340b6
--- /dev/null
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/model/RootElement.java
@@ -0,0 +1,54 @@
+/*******************************************************************************
+ * Copyright (c) 2008 IBM Corporation 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:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.equinox.internal.p2.ui.model;
+
+import org.eclipse.equinox.internal.provisional.p2.ui.policy.IUViewQueryContext;
+import org.eclipse.equinox.internal.provisional.p2.ui.policy.Policy;
+
+/**
+ * Element class that represents the root of a viewer. It can be configured
+ * with its own policy and query context.
+ *
+ * @since 3.5
+ *
+ */
+public abstract class RootElement extends RemoteQueriedElement {
+
+ private IUViewQueryContext queryContext;
+ private Policy policy;
+
+ public RootElement(Policy policy) {
+ this(policy.getQueryContext(), policy);
+ }
+
+ public RootElement(IUViewQueryContext queryContext, Policy policy) {
+ super(null);
+ this.queryContext = queryContext;
+ this.policy = policy;
+ }
+
+ /**
+ * Set the query context that is used when querying the receiver.
+ *
+ * @param context the query context to use
+ */
+ public void setQueryContext(IUViewQueryContext context) {
+ queryContext = context;
+ }
+
+ public IUViewQueryContext getQueryContext() {
+ return queryContext;
+ }
+
+ public Policy getPolicy() {
+ return policy;
+ }
+}
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/QueryableArtifactRepositoryManager.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/QueryableArtifactRepositoryManager.java
index 9dbd1b3db..f3bb80943 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/QueryableArtifactRepositoryManager.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/QueryableArtifactRepositoryManager.java
@@ -37,17 +37,17 @@ public class QueryableArtifactRepositoryManager implements IQueryable {
/**
* Iterates over the artifact repositories configured in this queryable.
- * If a query is specified, the query is run on each URL, passing any URLs that satisfy the
- * query to the provided collector. If no query is specified, all repository URLs iterated are passed
+ * If a query is specified, the query is run on each URI, passing any URIs that satisfy the
+ * query to the provided collector. If no query is specified, all repository URIs iterated are passed
* to the collector.
* <p>
* This method is long-running; progress and cancellation are provided
* by the given progress monitor.
* </p>
*
- * @param query The query to perform on the URLs, or <code>null</code> if all URLs should
+ * @param query The query to perform on the URIs, or <code>null</code> if all URIs should
* be accepted.
- * @param result Collects the repository URLs
+ * @param result Collects the repository URIs
* @param monitor a progress monitor, or <code>null</code> if progress
* reporting is not desired
* @return The collector argument
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/ArtifactRepositories.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/ArtifactRepositories.java
index 194b12401..da28e53f6 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/ArtifactRepositories.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/ArtifactRepositories.java
@@ -11,8 +11,9 @@
package org.eclipse.equinox.internal.provisional.p2.ui.model;
import org.eclipse.equinox.internal.p2.ui.ProvUIMessages;
-import org.eclipse.equinox.internal.p2.ui.model.RemoteQueriedElement;
+import org.eclipse.equinox.internal.p2.ui.model.RootElement;
import org.eclipse.equinox.internal.provisional.p2.ui.ElementQueryDescriptor;
+import org.eclipse.equinox.internal.provisional.p2.ui.policy.Policy;
import org.eclipse.equinox.internal.provisional.p2.ui.policy.QueryProvider;
/**
@@ -23,10 +24,10 @@ import org.eclipse.equinox.internal.provisional.p2.ui.policy.QueryProvider;
* @since 3.4
*
*/
-public class ArtifactRepositories extends RemoteQueriedElement {
+public class ArtifactRepositories extends RootElement {
- public ArtifactRepositories() {
- super(null);
+ public ArtifactRepositories(Policy policy) {
+ super(policy);
}
protected int getDefaultQueryType() {
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/MetadataRepositories.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/MetadataRepositories.java
index b1f440007..01732ba3d 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/MetadataRepositories.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/MetadataRepositories.java
@@ -11,7 +11,7 @@
package org.eclipse.equinox.internal.provisional.p2.ui.model;
import org.eclipse.equinox.internal.p2.ui.ProvUIMessages;
-import org.eclipse.equinox.internal.p2.ui.model.RemoteQueriedElement;
+import org.eclipse.equinox.internal.p2.ui.model.RootElement;
import org.eclipse.equinox.internal.provisional.p2.core.repository.IRepositoryManager;
import org.eclipse.equinox.internal.provisional.p2.ui.ElementQueryDescriptor;
import org.eclipse.equinox.internal.provisional.p2.ui.QueryableMetadataRepositoryManager;
@@ -27,21 +27,17 @@ import org.eclipse.equinox.internal.provisional.p2.ui.policy.*;
* @since 3.4
*
*/
-public class MetadataRepositories extends RemoteQueriedElement {
+public class MetadataRepositories extends RootElement {
private boolean includeDisabled = false;
private int repoFlags = IRepositoryManager.REPOSITORIES_ALL;
- private IUViewQueryContext queryContext;
- private Policy policy;
public MetadataRepositories(Policy policy) {
this(policy.getQueryContext(), policy, null);
}
public MetadataRepositories(IUViewQueryContext queryContext, Policy policy, QueryableMetadataRepositoryManager queryable) {
- super(null);
- this.queryContext = queryContext;
- this.policy = policy;
+ super(queryContext, policy);
this.queryable = queryable;
}
@@ -91,23 +87,6 @@ public class MetadataRepositories extends RemoteQueriedElement {
this.repoFlags = flags;
}
- /**
- * Set the query context that is used when querying the receiver.
- *
- * @param context the query context to use
- */
- public void setQueryContext(IUViewQueryContext context) {
- queryContext = context;
- }
-
- public IUViewQueryContext getQueryContext() {
- return queryContext;
- }
-
- public Policy getPolicy() {
- return policy;
- }
-
/*
* Overridden to check the query context. We might
* be showing repositories, or we might be flattening the
@@ -116,9 +95,9 @@ public class MetadataRepositories extends RemoteQueriedElement {
* @see org.eclipse.equinox.internal.provisional.p2.ui.query.QueriedElement#getQueryType()
*/
public int getQueryType() {
- if (queryContext == null)
+ if (getQueryContext() == null)
return getDefaultQueryType();
- return queryContext.getQueryType();
+ return getQueryContext().getQueryType();
}
protected int getDefaultQueryType() {
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/Profiles.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/Profiles.java
index d00d1dddc..dc93702e1 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/Profiles.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/model/Profiles.java
@@ -11,7 +11,8 @@
package org.eclipse.equinox.internal.provisional.p2.ui.model;
import org.eclipse.equinox.internal.p2.ui.ProvUIMessages;
-import org.eclipse.equinox.internal.p2.ui.model.QueriedElement;
+import org.eclipse.equinox.internal.p2.ui.model.RootElement;
+import org.eclipse.equinox.internal.provisional.p2.ui.policy.Policy;
import org.eclipse.equinox.internal.provisional.p2.ui.policy.QueryProvider;
/**
@@ -22,10 +23,10 @@ import org.eclipse.equinox.internal.provisional.p2.ui.policy.QueryProvider;
* @since 3.4
*
*/
-public class Profiles extends QueriedElement {
+public class Profiles extends RootElement {
- public Profiles() {
- super(null);
+ public Profiles(Policy policy) {
+ super(policy);
}
/*
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/policy/IUViewQueryContext.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/policy/IUViewQueryContext.java
index 6cfd2c1c8..c5da438d9 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/policy/IUViewQueryContext.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/provisional/p2/ui/policy/IUViewQueryContext.java
@@ -37,6 +37,10 @@ public class IUViewQueryContext {
// Whether to hide things that are already installed
// Defaults to false since we wouldn't know what profile to use
private boolean hideAlreadyInstalled = false;
+ // Whether to group items in repos by category. Note this only makes sense when the
+ // view type is AVAILABLE_VIEW_BY_REPO
+ private boolean useCategories = true;
+
private String profileId = null;
// What repositories to show
private int artifactRepositoryFlags = IRepositoryManager.REPOSITORIES_NON_SYSTEM;
@@ -122,4 +126,12 @@ public class IUViewQueryContext {
public void setVisibleInstalledIUProperty(String propertyName) {
visibleInstalledIUProperty = propertyName;
}
+
+ public void setUseCategories(boolean useCategories) {
+ this.useCategories = useCategories;
+ }
+
+ public boolean getUseCategories() {
+ return useCategories;
+ }
}

Back to the top