Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Activator.java12
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Createrepo.java20
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/CreaterepoCommandCreator.java185
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/form/MetadataPage.java15
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/messages.properties3
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoDeltaPropertyPage.java6
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoGeneralPropertyPage.java31
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoPreferenceConstants.java7
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoProject.java5
-rw-r--r--rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/ICreaterepoConstants.java5
10 files changed, 258 insertions, 31 deletions
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Activator.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Activator.java
index c11d732f17..e7b016c2cf 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Activator.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Activator.java
@@ -80,11 +80,21 @@ public class Activator extends AbstractUIPlugin {
*
* @return True if it is being used, false otherwise.
*/
- public static boolean isConfEnabled() {
+ public static boolean isProjectPrefEnabled() {
return getDefault().getPreferenceStore().getBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED);
}
/**
+ * Get the enabled status of using the delta preferences of
+ * createrepo.
+ *
+ * @return True if it is being used, false otherwise.
+ */
+ public static boolean isDeltaPrefEnabled() {
+ return getDefault().getPreferenceStore().getBoolean(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE);
+ }
+
+ /**
* Log an error.
*
* @param message A human-readable message.
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Createrepo.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Createrepo.java
index 246d948fef..d1c02b79fe 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Createrepo.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/Createrepo.java
@@ -19,6 +19,7 @@ import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.linuxtools.rpm.core.utils.Utils;
+import org.eclipse.linuxtools.rpm.createrepo.CreaterepoPreferenceConstants;
import org.eclipse.linuxtools.rpm.createrepo.CreaterepoProject;
import org.eclipse.linuxtools.rpm.createrepo.ICreaterepoConstants;
import org.osgi.framework.FrameworkUtil;
@@ -28,17 +29,27 @@ import org.osgi.framework.FrameworkUtil;
*/
public class Createrepo {
+ /*
+ * Default commands that every execution will have.
+ */
+ private static final String[] DEFAULT_ARGUMENTS = {
+ CreaterepoPreferenceConstants.PREF_VERBOSE, CreaterepoPreferenceConstants.PREF_PROFILE};
+
/**
* Holds the command line switches.
*/
private List<String> commandSwitches;
/**
- * Initialize the command switches to only be "createrepo".
+ * Initialize the command switches to be "createrepo" and
+ * default command arguments.
*/
public Createrepo() {
commandSwitches = new ArrayList<String>();
commandSwitches.add(ICreaterepoConstants.CREATEREPO_COMMAND);
+ for (String arg : DEFAULT_ARGUMENTS) {
+ commandSwitches.add(ICreaterepoConstants.DASH.concat(arg));
+ }
}
/**
@@ -55,7 +66,14 @@ public class Createrepo {
public IStatus execute(final OutputStream os, CreaterepoProject project, List<String> commands) throws CoreException {
commandSwitches.addAll(commands);
commandSwitches.add(project.getContentFolder().getLocation().toOSString());
+ /* Display what the execution looks like */
+ String commandString = ICreaterepoConstants.EMPTY_STRING;
+ for (String arg : commandSwitches) {
+ commandString = commandString.concat(arg + " "); //$NON-NLS-1$
+ }
+ commandString = commandString.concat("\n"); //$NON-NLS-1$
try {
+ os.write(commandString.getBytes());
return Utils.runCommand(os, project.getProject(), commandSwitches.toArray(new String[commandSwitches.size()]));
} catch (IOException e) {
IStatus status = new Status(
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/CreaterepoCommandCreator.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/CreaterepoCommandCreator.java
new file mode 100644
index 0000000000..be393f810c
--- /dev/null
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/CreaterepoCommandCreator.java
@@ -0,0 +1,185 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Red Hat Inc. 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:
+ * Neil Guzman - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.rpm.createrepo;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.linuxtools.rpm.createrepo.CreaterepoPreferenceConstants;
+import org.eclipse.linuxtools.rpm.createrepo.ICreaterepoConstants;
+
+/**
+ * Class to create and format the commands.
+ */
+public class CreaterepoCommandCreator {
+
+ // commands that are either used or not used
+ private static final String[] BOOLEAN_COMMANDS = {
+ // general
+ CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME,
+ CreaterepoPreferenceConstants.PREF_GENERATE_DB,
+ CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS,
+ CreaterepoPreferenceConstants.PREF_PRETTY_XML,
+ CreaterepoPreferenceConstants.PREF_CHECK_TS,
+ };
+
+ // commands that determine used state by arguments passed with it
+ private static final String[] STRING_COMMANDS = {
+ // general
+ CreaterepoPreferenceConstants.PREF_CHECKSUM,
+ CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE,
+ };
+
+ private static final String[] STRING_META_COMMANDS = {
+ // metadata
+ CreaterepoPreferenceConstants.PREF_REVISION,
+ CreaterepoPreferenceConstants.PREF_DISTRO_TAG,
+ CreaterepoPreferenceConstants.PREF_CONTENT_TAG,
+ CreaterepoPreferenceConstants.PREF_REPO_TAG
+ };
+
+ // commands that determine used state by int passed with it
+ private static final String[] INT_COMMANDS = {
+ // general
+ CreaterepoPreferenceConstants.PREF_WORKERS,
+ CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT,
+ };
+
+ private static final String[] INT_DELTA_COMMANDS = {
+ // deltas
+ CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE,
+ CreaterepoPreferenceConstants.PREF_NUM_DELTAS,
+ };
+
+ private IEclipsePreferences projectPreferences;
+ private IPreferenceStore preferenceStore;
+ private boolean project;
+ private boolean delta;
+
+ public CreaterepoCommandCreator(IEclipsePreferences projectPreferences) {
+ project = Activator.isProjectPrefEnabled();
+ delta = Activator.isDeltaPrefEnabled();
+ this.projectPreferences = projectPreferences;
+ preferenceStore = Activator.getDefault().getPreferenceStore();
+ }
+
+ /**
+ * Get all the command arguments.
+ *
+ * @return A list of all the command arguments.
+ */
+ public List<String> getCommands() {
+ List<String> commands = new ArrayList<String>();
+ commands.addAll(prepareBooleanCommands());
+ commands.addAll(prepareStringCommands());
+ commands.addAll(prepareIntCommands());
+ return commands;
+ }
+
+ /**
+ * These commands are either added to the execution or not, depending
+ * on the enabled status from the preferences.
+ *
+ * @return The command options to add.
+ */
+ public List<String> prepareBooleanCommands() {
+ List<String> commands = new ArrayList<String>();
+ if (delta) {
+ commands.add(ICreaterepoConstants.DASH.concat(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE));
+ }
+ for (String arg : BOOLEAN_COMMANDS) {
+ // if project preferences are enabled, use the preferences from there
+ boolean value = project ? projectPreferences.getBoolean(arg, preferenceStore.getDefaultBoolean(arg))
+ : preferenceStore.getBoolean(arg);
+ // if the value returned is true, that means the switch should be added
+ if (value) {
+ if (arg.equals(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)) {
+ arg = ICreaterepoConstants.DASH.concat("unique-").concat(arg); //$NON-NLS-1$
+ } else {
+ arg = ICreaterepoConstants.DASH.concat(arg);
+ }
+ commands.add(arg);
+ } else {
+ // only add the switch if its one of these options
+ if (arg.equals(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)) {
+ arg = ICreaterepoConstants.DASH.concat("simple-").concat(arg); //$NON-NLS-1$
+ commands.add(arg);
+ } else if (arg.equals(CreaterepoPreferenceConstants.PREF_GENERATE_DB)) {
+ arg = ICreaterepoConstants.DASH.concat("no-").concat(arg); //$NON-NLS-1$
+ commands.add(arg);
+ }
+ }
+ }
+ return commands;
+ }
+
+ /**
+ * Prepare the commands that require a string passed with them
+ * when executing.
+ *
+ * @return The command options to add.
+ */
+ public List<String> prepareStringCommands() {
+ List<String> commands = new ArrayList<String>();
+ for (String arg : STRING_COMMANDS) {
+ String value = project ? projectPreferences.get(arg, preferenceStore.getDefaultString(arg))
+ : preferenceStore.getString(arg);
+ arg = ICreaterepoConstants.DASH.concat(arg);
+ if (!value.isEmpty()) {
+ commands.add(arg);
+ commands.add(value);
+ }
+ }
+ for (String arg : STRING_META_COMMANDS) {
+ String value = projectPreferences.get(arg, preferenceStore.getDefaultString(arg));
+ arg = ICreaterepoConstants.DASH.concat(arg);
+ for (String tag : value.split(ICreaterepoConstants.DELIMITER)) {
+ if (!tag.isEmpty()) {
+ commands.add(arg);
+ commands.add(tag);
+ }
+ }
+ }
+ return commands;
+ }
+
+ /**
+ * Prepare the commands that require an integer passed with them
+ * when executing. Differs from prepareStringCommands() by how it
+ * retrieves the values from the preferences.
+ *
+ * @return The command options to add.
+ */
+ public List<String> prepareIntCommands() {
+ List<String> commands = new ArrayList<String>();
+ if (delta) {
+ for (String arg : INT_DELTA_COMMANDS) {
+ int value = projectPreferences.getInt(arg, preferenceStore.getDefaultInt(arg));
+ arg = ICreaterepoConstants.DASH.concat(arg);
+ commands.add(arg);
+ commands.add(Integer.toString(value));
+ }
+ } else {
+ for (String arg : INT_COMMANDS) {
+ // if project preferences are enabled, use the preferences from there
+ int value = project ? projectPreferences.getInt(arg, preferenceStore.getDefaultInt(arg))
+ : preferenceStore.getInt(arg);
+ arg = ICreaterepoConstants.DASH.concat(arg);
+ commands.add(arg);
+ commands.add(Integer.toString(value));
+ }
+ }
+ return commands;
+ }
+
+}
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/form/MetadataPage.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/form/MetadataPage.java
index 1d6f106c13..ae8ffab064 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/form/MetadataPage.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/form/MetadataPage.java
@@ -127,6 +127,17 @@ public class MetadataPage extends FormPage {
if (!prefRevisionTxt.isEmpty()) {
revisionTxt.setText(prefRevisionTxt);
}
+ revisionTxt.addSelectionListener(new SelectionAdapter() {
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
+ */
+ @Override
+ public void widgetDefaultSelected(SelectionEvent e) {
+ String revisionText = revisionTxt.getText().trim();
+ savePreferences(CreaterepoPreferenceConstants.PREF_REVISION, revisionText);
+ }
+ });
revSection.setClient(sectionClient);
//---------- REVISION SECTION END
@@ -161,8 +172,8 @@ public class MetadataPage extends FormPage {
| SWT.VERTICAL | SWT.LEFT_TO_RIGHT | SWT.SMOOTH);
tagsTreeViewer.setContentProvider(new CreaterepoTreeContentProvider());
tagsTreeViewer.setLabelProvider(new CreaterepoTreeLabelProvider());
- CreaterepoCategoryModel test = new CreaterepoCategoryModel(project);
- tagsTreeViewer.setInput(test);
+ CreaterepoCategoryModel model = new CreaterepoCategoryModel(project);
+ tagsTreeViewer.setInput(model);
// change the tag text field on change (make editing tag easier)
tagsTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
@Override
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/messages.properties b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/messages.properties
index b6b63d04b7..7d2a451d93 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/messages.properties
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/messages.properties
@@ -71,7 +71,8 @@ RemoveButtonListener_error=Error occured while trying to remove the RPMs.
MetadataPage_title=Metadata
MetadataPage_formHeaderText=Repository Tags and Revision
MetadataPage_sectionTitleRevision=Revision
-MetadataPage_sectionInstructionRevision=Update the repository revision number. Changes take effect after execution.
+MetadataPage_sectionInstructionRevision=Update the repository revision number. Must press the ENTER key to save \
+ change. Changes take effect after execution.
MetadataPage_labelRevision=&Revision:
MetadataPage_sectionTitleTags=Tags
MetadataPage_sectionInstructionTags=Add or remove as many tags per category as needed. Changes take effect after execution.
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoDeltaPropertyPage.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoDeltaPropertyPage.java
index a19a18a2bc..e88e1c596f 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoDeltaPropertyPage.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoDeltaPropertyPage.java
@@ -13,6 +13,7 @@ package org.eclipse.linuxtools.internal.rpm.createrepo.preference;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.IntegerFieldEditor;
+import org.eclipse.linuxtools.internal.rpm.createrepo.Activator;
import org.eclipse.linuxtools.internal.rpm.createrepo.Messages;
import org.eclipse.linuxtools.rpm.createrepo.CreaterepoPreferenceConstants;
import org.eclipse.swt.SWT;
@@ -51,7 +52,7 @@ public class CreaterepoDeltaPropertyPage extends CreaterepoPropertyPage {
bfeEnableDeltas = new BooleanFieldEditor(
CreaterepoPreferenceConstants.PREF_DELTA_ENABLE,
Messages.CreaterepoDeltaPropertyPage_booleanEnableLabel, composite);
- bfeEnableDeltas.setPreferenceStore(preferenceStore);
+ bfeEnableDeltas.setPreferenceStore(Activator.getDefault().getPreferenceStore());
bfeEnableDeltas.load();
bfeEnableDeltas.setPropertyChangeListener(this);
@@ -97,6 +98,7 @@ public class CreaterepoDeltaPropertyPage extends CreaterepoPropertyPage {
*/
@Override
public void performDefaults() {
+ Activator.getDefault().getPreferenceStore().setToDefault(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE);
bfeEnableDeltas.loadDefault();
ifeNumDeltas.loadDefault();
ifeMaxSizeDeltas.loadDefault();
@@ -108,7 +110,7 @@ public class CreaterepoDeltaPropertyPage extends CreaterepoPropertyPage {
*/
@Override
public boolean performOk() {
- getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE,
+ Activator.getDefault().getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE,
bfeEnableDeltas.getBooleanValue());
getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_NUM_DELTAS,
ifeNumDeltas.getIntValue());
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoGeneralPropertyPage.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoGeneralPropertyPage.java
index 34e3a58bee..9d37812032 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoGeneralPropertyPage.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/CreaterepoGeneralPropertyPage.java
@@ -10,8 +10,6 @@
*******************************************************************************/
package org.eclipse.linuxtools.internal.rpm.createrepo.preference;
-import org.eclipse.core.resources.ProjectScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.IntegerFieldEditor;
@@ -102,7 +100,8 @@ public class CreaterepoGeneralPropertyPage extends CreaterepoPropertyPage {
layoutData.grabExcessHorizontalSpace = true;
btnProjectSettings.setText(Messages.CreaterepoGeneralPropertyPage_projectSettings);
btnProjectSettings.setLayoutData(layoutData);
- btnProjectSettings.setSelection(loadBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED));
+ btnProjectSettings.setSelection(Activator.getDefault().getPreferenceStore()
+ .getBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED));
btnProjectSettings.addSelectionListener(new SelectionAdapter() {
/*
* (non-Javadoc)
@@ -257,20 +256,6 @@ public class CreaterepoGeneralPropertyPage extends CreaterepoPropertyPage {
return composite;
}
- /**
- * Return the boolean value of the preference key.
- *
- * @param preferenceKey The preference key to get the boolean value of.
- * @return The boolean value of the preference key.
- */
- protected boolean loadBoolean(String preferenceKey) {
- IEclipsePreferences projectPreferences = new ProjectScope(project)
- .getNode(Activator.PLUGIN_ID);
- boolean value = projectPreferences.getBoolean(preferenceKey,
- getPreferenceStore().getDefaultBoolean(preferenceKey));
- return value;
- }
-
/*
* (non-Javadoc)
* @see org.eclipse.jface.preference.PreferencePage#performDefaults()
@@ -278,8 +263,8 @@ public class CreaterepoGeneralPropertyPage extends CreaterepoPropertyPage {
@Override
public void performDefaults() {
// load the defaults UI
- btnProjectSettings.setSelection(getPreferenceStore().getDefaultBoolean(
- CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED));
+ btnProjectSettings.setSelection(Activator.getDefault().getPreferenceStore()
+ .getDefaultBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED));
bfeIncludeChecksum.loadDefault();
bfeSQLDB.loadDefault();
bfeIgnoreSymlinks.loadDefault();
@@ -292,7 +277,7 @@ public class CreaterepoGeneralPropertyPage extends CreaterepoPropertyPage {
rgfeCompressionTypes.loadDefault();
// set the defaults preferences
- getPreferenceStore().setToDefault(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED);
+ Activator.getDefault().getPreferenceStore().setToDefault(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED);
getPreferenceStore().setToDefault(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME);
getPreferenceStore().setToDefault(CreaterepoPreferenceConstants.PREF_GENERATE_DB);
getPreferenceStore().setToDefault(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS);
@@ -314,7 +299,8 @@ public class CreaterepoGeneralPropertyPage extends CreaterepoPropertyPage {
public boolean performOk() {
// only save when using project specific settings
if (btnProjectSettings.getSelection()) {
- getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED, true);
+ Activator.getDefault().getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED,
+ true);
getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME,
bfeIncludeChecksum.getBooleanValue());
getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_GENERATE_DB,
@@ -337,7 +323,8 @@ public class CreaterepoGeneralPropertyPage extends CreaterepoPropertyPage {
getSelectedRadioButton(rgfeCompressionTypes.getRadioBoxControl(compressContainer),
rgfeCompressionTypes.getPreferenceName()));
} else {
- getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED, false);
+ Activator.getDefault().getPreferenceStore().setValue(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED,
+ false);
}
return true;
}
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoPreferenceConstants.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoPreferenceConstants.java
index 8dae19e32e..0fb1398521 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoPreferenceConstants.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoPreferenceConstants.java
@@ -11,7 +11,8 @@
package org.eclipse.linuxtools.rpm.createrepo;
/**
- * Constants used for createrepo preferences.
+ * Constants used for createrepo preferences, as well as the command
+ * arguments of the execution.
*/
public final class CreaterepoPreferenceConstants {
@@ -42,6 +43,10 @@ public final class CreaterepoPreferenceConstants {
/****/ public static final String PREF_NUM_DELTAS = "num-deltas"; //$NON-NLS-1$
/****/ public static final String PREF_MAX_DELTA_SIZE = "max-delta-rpm-size"; //$NON-NLS-1$
+ // Defaults
+ /****/ public static final String PREF_VERBOSE = "verbose"; //$NON-NLS-1$
+ /****/ public static final String PREF_PROFILE = "profile"; //$NON-NLS-1$
+
/*
* Preference Values.
*/
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoProject.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoProject.java
index 538ebbae61..ea8aca42a4 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoProject.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/CreaterepoProject.java
@@ -31,6 +31,7 @@ import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
import org.eclipse.linuxtools.internal.rpm.createrepo.Activator;
import org.eclipse.linuxtools.internal.rpm.createrepo.Createrepo;
+import org.eclipse.linuxtools.internal.rpm.createrepo.CreaterepoCommandCreator;
import org.eclipse.linuxtools.internal.rpm.createrepo.Messages;
import org.osgi.framework.FrameworkUtil;
@@ -215,8 +216,10 @@ public class CreaterepoProject {
*
* @return The command arguments.
*/
- private static List<String> getCommandArguments() {
+ private List<String> getCommandArguments() {
List<String> commands = new ArrayList<String>();
+ CreaterepoCommandCreator creator = new CreaterepoCommandCreator(projectPreferences);
+ commands.addAll(creator.getCommands());
return commands;
}
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/ICreaterepoConstants.java b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/ICreaterepoConstants.java
index f7f9ed3493..08af45549c 100644
--- a/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/ICreaterepoConstants.java
+++ b/rpm/org.eclipse.linuxtools.rpm.createrepo/src/org/eclipse/linuxtools/rpm/createrepo/ICreaterepoConstants.java
@@ -46,4 +46,9 @@ public interface ICreaterepoConstants {
*/
String CREATEREPO_COMMAND = "createrepo"; //$NON-NLS-1$
+ /**
+ * Dashes used for commands.
+ */
+ String DASH = "--"; //$NON-NLS-1$
+
}

Back to the top