logo       
Google Custom Search
    AddThis Social Bookmark Button

ruper2/src/java/eclipse/org/krysalis/ruper2/eclipse/plugin/ui/browser Downl: msg#00427

Subject: ruper2/src/java/eclipse/org/krysalis/ruper2/eclipse/plugin/ui/browser Downloader.java,1.1,1.2 RuperView.java,1.3,1.4
Update of 
/cvsroot/metamorphosis/ruper2/src/java/eclipse/org/krysalis/ruper2/eclipse/plugin/ui/browser
In directory 
sc8-pr-cvs1:/tmp/cvs-serv28552/src/java/eclipse/org/krysalis/ruper2/eclipse/plugin/ui/browser

Modified Files:
        Downloader.java RuperView.java 
Log Message:
Browser action

Index: Downloader.java
===================================================================
RCS file: 
/cvsroot/metamorphosis/ruper2/src/java/eclipse/org/krysalis/ruper2/eclipse/plugin/ui/browser/Downloader.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Downloader.java     24 Oct 2003 20:52:37 -0000      1.1
--- Downloader.java     27 Oct 2003 21:50:20 -0000      1.2
***************
*** 6,12 ****
--- 6,20 ----
  import java.lang.reflect.InvocationTargetException;
  import java.util.ArrayList;
+ import java.util.Iterator;
+ import java.util.List;
  
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.jface.operation.IRunnableWithProgress;
+ import org.krysalis.ruper2.RuperException;
+ import org.krysalis.ruper2.eclipse.EclipseFileUpdater;
+ import org.krysalis.ruper2.eclipse.util.RuperEclipseHelper;
+ import org.krysalis.ruper2.impl.RepositoryObject;
+ import org.krysalis.ruper2.impl.RepositoryResourceObject;
+ import org.krysalis.version.log.Logger;
  
  /**
***************
*** 15,19 ****
--- 23,29 ----
  public class Downloader  implements IRunnableWithProgress {
  
+       private EclipseFileUpdater m_eclipseRuper;
        private ArrayList m_resourcesToDownload;
+       private String m_targetRepository;
        
        /**
***************
*** 22,26 ****
        public Downloader() {
                super();
!               // TODO Auto-generated constructor stub
        }
  
--- 32,48 ----
        public Downloader() {
                super();
!               getFileUpdater();
!       }
!       
!       private void getFileUpdater(){
!               if(this.m_eclipseRuper == null){
!                       
!                       try {
!                               m_eclipseRuper = 
EclipseFileUpdater.getEclipseFileUpdater();
!                       }
!                       catch (RuperException e) {
!                               Logger.getLogger().error("Couldn't get Eclipse 
file upader", e);
!                       }
!               }
        }
  
***************
*** 28,34 ****
                 throws InvocationTargetException, InterruptedException
        {
!               // TODO  download concept
        }
  
        /**
         * @param list
--- 50,94 ----
                 throws InvocationTargetException, InterruptedException
        {
!               // Get the groups info from the ResourceObjets
!               List resources = getResources();
!               
!               // set the target repository
!               
m_eclipseRuper.setDefaultTargetRepository(this.m_targetRepository);
!               
!               try {
!                       m_eclipseRuper.downloadResources(resources);
!               }
!               catch (RuperException e) {
!                       Logger.getLogger().error("Error downloading the 
resources", e);
!               }
! 
        }
  
+       private List getResources(){
+               
+               List resources = null;
+               
+               if(m_resourcesToDownload != null){
+                       
+                       resources = new ArrayList();
+                       
+                       for(Iterator iterator=m_resourcesToDownload.iterator(); 
iterator.hasNext();){
+                               // loop through and get the  info
+                               RepositoryObject repositoryObject = 
(RepositoryObject)iterator.next();
+                               
+                               int type = repositoryObject.getType();
+                               
+                               if(type == RepositoryObject.RESOURCE){
+                                       RepositoryResourceObject resourceObject 
= (RepositoryResourceObject)repositoryObject;
+                                       
+                                       
resources.add(resourceObject.getResource());
+                               }
+                       }
+                       
+               }
+               return resources;
+       }
+       
+       
        /**
         * @param list
***************
*** 36,39 ****
--- 96,120 ----
        public void setResourcesToDownload(ArrayList list) {
                m_resourcesToDownload = list;
+       }
+ 
+       /**
+        * @return
+        */
+       public ArrayList getResourcesToDownload() {
+               return m_resourcesToDownload;
+       }
+ 
+       /**
+        * @return
+        */
+       public String getTargetRepository() {
+               return m_targetRepository;
+       }
+ 
+       /**
+        * @param string
+        */
+       public void setTargetRepository(String string) {
+               m_targetRepository = string;
        }
  

Index: RuperView.java
===================================================================
RCS file: 
/cvsroot/metamorphosis/ruper2/src/java/eclipse/org/krysalis/ruper2/eclipse/plugin/ui/browser/RuperView.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** RuperView.java      24 Oct 2003 20:52:37 -0000      1.3
--- RuperView.java      27 Oct 2003 21:50:20 -0000      1.4
***************
*** 9,22 ****
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.jface.action.Action;
- import org.eclipse.jface.action.IMenuListener;
  import org.eclipse.jface.action.IMenuManager;
! import org.eclipse.jface.action.MenuManager;
  import org.eclipse.jface.dialogs.MessageDialog;
  import org.eclipse.jface.dialogs.ProgressMonitorDialog;
  import org.eclipse.jface.viewers.CheckStateChangedEvent;
  import org.eclipse.jface.viewers.CheckboxTreeViewer;
- import org.eclipse.jface.viewers.DoubleClickEvent;
  import org.eclipse.jface.viewers.ICheckStateListener;
- import org.eclipse.jface.viewers.IDoubleClickListener;
  import org.eclipse.jface.viewers.ITreeContentProvider;
  import org.eclipse.jface.viewers.LabelProvider;
--- 9,19 ----
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.jface.action.Action;
  import org.eclipse.jface.action.IMenuManager;
! import org.eclipse.jface.action.IToolBarManager;
  import org.eclipse.jface.dialogs.MessageDialog;
  import org.eclipse.jface.dialogs.ProgressMonitorDialog;
  import org.eclipse.jface.viewers.CheckStateChangedEvent;
  import org.eclipse.jface.viewers.CheckboxTreeViewer;
  import org.eclipse.jface.viewers.ICheckStateListener;
  import org.eclipse.jface.viewers.ITreeContentProvider;
  import org.eclipse.jface.viewers.LabelProvider;
***************
*** 26,30 ****
  import org.eclipse.swt.graphics.Image;
  import org.eclipse.swt.widgets.Composite;
- import org.eclipse.swt.widgets.Menu;
  import org.eclipse.ui.IActionBars;
  import org.eclipse.ui.ISharedImages;
--- 23,26 ----
***************
*** 34,39 ****
  import org.krysalis.ruper2.eclipse.EclipseFileUpdater;
  import org.krysalis.ruper2.eclipse.plugin.RuperPlugin;
  import org.krysalis.ruper2.repository.IRepository;
- import org.krysalis.ruper2.repository.RepositoryObject;
  import org.krysalis.version.log.Logger;
  
--- 30,36 ----
  import org.krysalis.ruper2.eclipse.EclipseFileUpdater;
  import org.krysalis.ruper2.eclipse.plugin.RuperPlugin;
+ import org.krysalis.ruper2.eclipse.util.RuperEclipseHelper;
+ import org.krysalis.ruper2.impl.RepositoryObject;
  import org.krysalis.ruper2.repository.IRepository;
  import org.krysalis.version.log.Logger;
  
***************
*** 63,67 ****
        private RepositoryObject m_rootInput;
      
!     private Action downloadAction;
  
      class ViewContentProvider  implements  ITreeContentProvider {
--- 60,64 ----
        private RepositoryObject m_rootInput;
      
!     private Action m_downloadAction;
  
      class ViewContentProvider  implements  ITreeContentProvider {
***************
*** 88,96 ****
          public Object[] getChildren(Object parent) {
                        try {
                                if (parent instanceof RepositoryObject) {
!                                   return ((RepositoryObject) 
parent).getChildrenArray();
                                }
                                else if 
(parent.equals(ResourcesPlugin.getWorkspace())) {
!                                       return m_rootInput.getChildrenArray();
                                }
                        }
--- 85,113 ----
          public Object[] getChildren(Object parent) {
                        try {
+                       Object[] children;
+                       
                                if (parent instanceof RepositoryObject) {
!                                       // get cached children
!                                       children = ((RepositoryObject) 
parent).getCachedChildrenArray();
!                                       if(children != null){
!                                               return children;
!                                       }
!                                       
!                                   LoadingThread loader = new 
LoadingThread("LOADER");
!                                   
loader.setRepositoryObject((RepositoryObject) parent);
!                                   loader.start(); 
!                                   return new Object[]{"Loading ... "};
                                }
                                else if 
(parent.equals(ResourcesPlugin.getWorkspace())) {
!                                       // get cached children
!                                       children = 
m_rootInput.getCachedChildrenArray();
!                                       if(children != null){
!                                               return children;
!                                       }
!                                       LoadingThread loader = new 
LoadingThread("LOADER");
!                                       loader.setRepositoryObject(m_rootInput);
!                                       loader.start(); 
!                                       return new Object[]{"Loading ... "};
!                                       
                                }
                        }
***************
*** 183,193 ****
          m_viewer.addCheckStateListener(this);
          makeActions();
-         hookContextMenu();
-         hookDoubleClickAction();
          contributeToActionBars();
      }
  
        private void makeActions(){
!               this.downloadAction = new Action() 
                {
                        public void run() 
--- 200,208 ----
          m_viewer.addCheckStateListener(this);
          makeActions();
          contributeToActionBars();
      }
  
        private void makeActions(){
!               m_downloadAction = new Action() 
                {
                        public void run() 
***************
*** 209,219 ****
                                
downloader.setResourcesToDownload(resourcesToDownload);
                                
                                ProgressMonitorDialog monitorDlg = new 
ProgressMonitorDialog(RuperPlugin.getShell());   
                                IProgressMonitor progressMonitor = 
monitorDlg.getProgressMonitor();
                                
-                               // TODO run
- 
                                try {
                                        monitorDlg.run(true, true, downloader);
                                }
                                catch (InvocationTargetException e) {
--- 224,238 ----
                                
downloader.setResourcesToDownload(resourcesToDownload);
                                
+                               // show an input dialog to let the user enter 
target rep 
+                               String targetRepository = 
RuperEclipseHelper.directoryBrowse();
+                               
downloader.setTargetRepository(targetRepository);                               
+                               
                                ProgressMonitorDialog monitorDlg = new 
ProgressMonitorDialog(RuperPlugin.getShell());   
                                IProgressMonitor progressMonitor = 
monitorDlg.getProgressMonitor();
                                
                                try {
                                        monitorDlg.run(true, true, downloader);
+                                       RuperEclipseHelper.messageDialog("Files 
are downloaded, refresh " + targetRepository +" to see the files");
+                                       
                                }
                                catch (InvocationTargetException e) {
***************
*** 224,256 ****
                                }
                        }
                };
                
        }
        
        
!     private void hookContextMenu() {
!         MenuManager menuMgr = new MenuManager("#PopupMenu");
!         menuMgr.setRemoveAllWhenShown(true);
!         menuMgr.addMenuListener(new IMenuListener() {
!             public void menuAboutToShow(IMenuManager manager) {
!                // RuperView.this.fillContextMenu(manager);
!             }
!         });
!         Menu menu = menuMgr.createContextMenu(m_viewer.getControl());
!         m_viewer.getControl().setMenu(menu);
!         getSite().registerContextMenu(menuMgr, m_viewer);
!     }
  
!     private void contributeToActionBars() {
!         IActionBars bars = getViewSite().getActionBars();
!     }
  
!     private void hookDoubleClickAction() {
!         m_viewer.addDoubleClickListener(new IDoubleClickListener() {
!             public void doubleClick(DoubleClickEvent event) {
!               //  doubleClickAction.run();
!             }
!         });
!     }
  
      private void showMessage(String message) {
--- 243,271 ----
                                }
                        }
+                       
                };
+               m_downloadAction.setText("Download");
+               m_downloadAction.setToolTipText("Ruper2 Download");
+               m_downloadAction.setImageDescriptor(
+                       
PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(
+                               ISharedImages.IMG_OBJS_TASK_TSK));
+ 
                
        }
        
        
!       private void contributeToActionBars() {
!               IActionBars bars = getViewSite().getActionBars();
!               fillLocalPullDown(bars.getMenuManager());
!               fillLocalToolBar(bars.getToolBarManager());
!       }
  
!       private void fillLocalPullDown(IMenuManager manager) {
!               manager.add(this.m_downloadAction);
!       }
  
!       private void fillLocalToolBar(IToolBarManager manager) {
!               manager.add(this.m_downloadAction);
!       }
  
      private void showMessage(String message) {
***************
*** 327,331 ****
                        RepositoryObject childElement= 
(RepositoryObject)children[i];
                        
!                       if (elementState){
                                 if (! m_viewer.getChecked(childElement)){
                                        if(i != 0 )
--- 342,346 ----
                        RepositoryObject childElement= 
(RepositoryObject)children[i];
                        
!                       if (checked){
                                 if (! m_viewer.getChecked(childElement)){
                                        if(i != 0 )
***************
*** 337,341 ****
                        }
                                
!                       if (! elementState){
                                if (m_viewer.getChecked(childElement)){
                                        if(i != 0 )
--- 352,356 ----
                        }
                                
!                       if (! checked){
                                if (m_viewer.getChecked(childElement)){
                                        if(i != 0 )
***************
*** 371,373 ****
--- 386,418 ----
        }
  
+       class LoadingThread extends Thread {
+               
+               RepositoryObject repositoryObject;
+               Object[] result;
+               
+               public LoadingThread(String name){
+                       super(name); 
+               }
+               
+               public void setRepositoryObject(RepositoryObject repoObj){
+                       repositoryObject = repoObj;
+               }
+               
+               public Object[] getResult(){
+                       return result;
+               }
+               
+               public void run(){
+                       try {
+                               result = repositoryObject.getChildrenArray();
+                               m_viewer.refresh(repositoryObject);
+                       }
+                       catch (RuperException e) {
+                               
+                               Logger.getLogger().error("Error loading from 
repository, " 
+                                                                       + 
repositoryObject.getName());
+                               result = new Object[]{"Error loading..."};
+                       }
+               }
+       }
  }




-------------------------------------------------------
This SF.net email is sponsored by: The SF.net Donation Program.
Do you like what SourceForge.net is doing for the Open
Source Community?  Make a contribution, and help us add new
features and functionality. Click here: http://sourceforge.net/donate/



Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>