1 19 package org.netbeans.modules.versioning.system.cvss.ui.actions.update; 20 21 import org.netbeans.lib.cvsclient.command.DefaultFileInfoContainer; 22 import org.netbeans.modules.versioning.util.NoContentPanel; 23 import org.openide.util.NbBundle; 24 25 import javax.swing.*; 26 import java.util.*; 27 import java.awt.BorderLayout ; 28 import java.text.DateFormat ; 29 30 35 class UpdateResults extends JComponent { 36 37 private final List<DefaultFileInfoContainer> updates; 38 39 public UpdateResults(List<DefaultFileInfoContainer> output, String cvsRoot, String contextDisplayName) { 40 this.updates = filter(output); 41 String time = DateFormat.getTimeInstance().format(new Date()); 42 setName(NbBundle.getMessage(UpdateResults.class, "CTL_UpdateResults_Title", cvsRoot, contextDisplayName, time)); setLayout(new BorderLayout ()); 44 if (updates.size() == 0) { 45 add(new NoContentPanel(NbBundle.getMessage(UpdateResults.class, "MSG_NoFilesUpdated"))); } else { 47 UpdateResultsTable urt = new UpdateResultsTable(); 48 urt.setTableModel(createNodes()); 49 add(urt.getComponent()); 50 } 51 } 52 53 private List<DefaultFileInfoContainer> filter(List<DefaultFileInfoContainer> l) { 54 List<DefaultFileInfoContainer> list = new ArrayList<DefaultFileInfoContainer>(l.size()); 55 for (DefaultFileInfoContainer update : l) { 56 if ("UPGYC".indexOf(update.getType()) != -1) { list.add(update); 58 } 59 } 60 return list; 61 } 62 63 private UpdateResultNode[] createNodes() { 64 UpdateResultNode [] nodes = new UpdateResultNode[updates.size()]; 65 int idx = 0; 66 for (DefaultFileInfoContainer info : updates) { 67 nodes[idx++] = new UpdateResultNode(info); 68 } 69 return nodes; 70 } 71 } 72 | Popular Tags |