Compare commits
1 Commits
patchrelea
...
hwang/TUP-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
75319887e1 |
@@ -13,6 +13,8 @@
|
||||
package org.talend.core.repository.ui.dialog;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
@@ -30,12 +32,14 @@ import org.eclipse.swt.widgets.Shell;
|
||||
import org.eclipse.swt.widgets.Table;
|
||||
import org.eclipse.swt.widgets.TableColumn;
|
||||
import org.eclipse.swt.widgets.TableItem;
|
||||
import org.talend.commons.exception.PersistenceException;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
import org.talend.core.model.properties.Item;
|
||||
import org.talend.core.model.properties.ProcessItem;
|
||||
import org.talend.core.model.properties.Property;
|
||||
import org.talend.core.model.repository.IRepositoryObject;
|
||||
import org.talend.core.model.repository.IRepositoryViewObject;
|
||||
import org.talend.core.repository.utils.RepositoryNodeSortUtil;
|
||||
import org.talend.core.ui.ITestContainerProviderService;
|
||||
import org.talend.repository.model.RepositoryNode;
|
||||
import org.talend.repository.model.IRepositoryNode.EProperties;
|
||||
@@ -107,7 +111,8 @@ public class PastSelectorDialog extends Dialog {
|
||||
modificationTime.setWidth(200);
|
||||
modificationTime.setText("Modification Time");
|
||||
|
||||
for (IRepositoryViewObject object : versions) {
|
||||
RepositoryNodeSortUtil util = new RepositoryNodeSortUtil();
|
||||
for (IRepositoryViewObject object : util.getSortVersion(versions)) {
|
||||
TableItem item = new TableItem(table, SWT.NONE);
|
||||
item.setData(object);
|
||||
item.setText(0, object.getVersion());
|
||||
@@ -187,7 +192,7 @@ public class PastSelectorDialog extends Dialog {
|
||||
});
|
||||
return composite;
|
||||
}
|
||||
|
||||
|
||||
public Set<IRepositoryViewObject> getSelectedVersionItems() {
|
||||
return this.selectedVersionItems;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2019 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.core.repository.utils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
import org.talend.commons.utils.Version;
|
||||
import org.talend.core.model.repository.IRepositoryViewObject;
|
||||
|
||||
/**
|
||||
* @author hwang
|
||||
*
|
||||
*/
|
||||
public class RepositoryNodeSortUtil {
|
||||
|
||||
public List<IRepositoryViewObject> getSortVersion(List<IRepositoryViewObject> versions) {
|
||||
List<IRepositoryViewObject> temp = new ArrayList<IRepositoryViewObject>();
|
||||
temp.addAll(versions);
|
||||
|
||||
Collections.sort(temp, new Comparator<IRepositoryViewObject>() {
|
||||
|
||||
@Override
|
||||
public int compare(IRepositoryViewObject o1, IRepositoryViewObject o2) {
|
||||
String version1 = o1.getVersion();
|
||||
String version2 = o2.getVersion();
|
||||
if(version1 != null && version2 != null) {
|
||||
return new Version(version1).compareTo(new Version(version2));
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
});
|
||||
return temp;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2019 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.repository.utils;
|
||||
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.talend.core.model.properties.ItemState;
|
||||
import org.talend.core.model.properties.ProcessItem;
|
||||
import org.talend.core.model.properties.PropertiesFactory;
|
||||
import org.talend.core.model.properties.Property;
|
||||
import org.talend.core.model.repository.IRepositoryViewObject;
|
||||
import org.talend.core.model.repository.RepositoryViewObject;
|
||||
import org.talend.core.repository.utils.RepositoryNodeSortUtil;
|
||||
|
||||
/**
|
||||
* @author hwang
|
||||
*
|
||||
*/
|
||||
public class RepositoryNodeSortUtilTest {
|
||||
|
||||
@Test
|
||||
public void testGetSortVersion() {
|
||||
Property property1 = PropertiesFactory.eINSTANCE.createProperty();
|
||||
property1.setId("property1"); //$NON-NLS-1$
|
||||
property1.setVersion("2.9"); //$NON-NLS-1$
|
||||
property1.setLabel("test1");//$NON-NLS-1$
|
||||
ProcessItem item1 = PropertiesFactory.eINSTANCE.createProcessItem();
|
||||
ItemState state = PropertiesFactory.eINSTANCE.createItemState();
|
||||
state.setDeleted(false);
|
||||
item1.setState(state);
|
||||
property1.setItem(item1);
|
||||
IRepositoryViewObject object1 = new RepositoryViewObject(property1, true);
|
||||
|
||||
property1 = PropertiesFactory.eINSTANCE.createProperty();
|
||||
property1.setId("property1"); //$NON-NLS-1$
|
||||
property1.setVersion("0.3"); //$NON-NLS-1$
|
||||
property1.setLabel("test1");//$NON-NLS-1$
|
||||
item1 = PropertiesFactory.eINSTANCE.createProcessItem();
|
||||
state = PropertiesFactory.eINSTANCE.createItemState();
|
||||
state.setDeleted(false);
|
||||
item1.setState(state);
|
||||
property1.setItem(item1);
|
||||
IRepositoryViewObject object2 = new RepositoryViewObject(property1, true);
|
||||
|
||||
property1 = PropertiesFactory.eINSTANCE.createProperty();
|
||||
property1.setId("property1"); //$NON-NLS-1$
|
||||
property1.setVersion("2.11"); //$NON-NLS-1$
|
||||
property1.setLabel("test1");//$NON-NLS-1$
|
||||
item1 = PropertiesFactory.eINSTANCE.createProcessItem();
|
||||
state = PropertiesFactory.eINSTANCE.createItemState();
|
||||
state.setDeleted(false);
|
||||
item1.setState(state);
|
||||
property1.setItem(item1);
|
||||
IRepositoryViewObject object3 = new RepositoryViewObject(property1, true);
|
||||
|
||||
List<IRepositoryViewObject> temp = new ArrayList<IRepositoryViewObject>();
|
||||
RepositoryNodeSortUtil util = new RepositoryNodeSortUtil();
|
||||
|
||||
temp = new ArrayList<IRepositoryViewObject>();
|
||||
temp.add(object3);
|
||||
temp.add(object2);
|
||||
temp.add(object1);
|
||||
List<IRepositoryViewObject> result = util.getSortVersion(temp);
|
||||
assertTrue("0.3".equals(result.get(0).getVersion()));
|
||||
assertTrue("2.9".equals(result.get(1).getVersion()));
|
||||
assertTrue("2.11".equals(result.get(2).getVersion()));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user