VeaR/JEllipse

pl.krakow.cmuj.bioinformatics.jellipse
Class PdbFetcher

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by pl.krakow.cmuj.bioinformatics.jellipse.PdbFetcher
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class PdbFetcher
extends javax.swing.JFrame

Loads PDB file content via http protocol from RCSB or from a local file. Assumption is made that filess retrieved from the server are gzipped and local ones are not.

See Also:
PdbFile, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  javax.swing.JButton jButtonFtpPdbRetrieve
           
private  javax.swing.JButton jButtonPdbFileChoose
           
private  javax.swing.JFileChooser jFileChooserSelectPdb
           
private  javax.swing.JLabel jLabel1
           
private  javax.swing.JLabel jLabelFtpPdbId
           
private  javax.swing.JPanel jPanelGetPdbViaFtp
           
private  javax.swing.JPanel jPanelGetPdbViaLocal
           
private  javax.swing.JTextField jTextFieldFtpPdbId
           
private  PdbFile pdb
           
private  java.lang.StringBuffer pdbContent
           
private  java.lang.String pdbid
           
private  int pdbsize
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
PdbFetcher()
          Creates new PdbFetcher and displays as a JFrame
 
Method Summary
private  void centerWindow(java.awt.Component frame)
          Displays any component in the center of the screen.
 PdbFile getPdbFile()
          Get pdb file read by the PdbFetcher.
private  void getPdbFtp(java.lang.String pdbid)
          Retrieve peptide structure as a gzipped PDB file via http protocol.
 java.lang.String getPdbId()
          Allows to read PDB ID of the PdbFetcher.
private  void getPdbLoad(java.lang.String pdbpath)
          Load the structure from a non-compressed PDB file on the local filesystem.
private  void initComponents()
          This method is called from within the constructor to initialize the form.
private  void jButtonFtpPdbRetrieveActionPerformed(java.awt.event.ActionEvent evt)
          Starts PDB file retrieval.
private  void jButtonPdbFileChooseActionPerformed(java.awt.event.ActionEvent evt)
          Handles dialog window allowing to choose PDB file form a local filesystem.
private  void jTextFieldFtpPdbIdActionPerformed(java.awt.event.ActionEvent evt)
           
private  void jTextFieldFtpPdbIdKeyReleased(java.awt.event.KeyEvent evt)
          Sets jTextFieldFtpPdbId's backgroung pink if PDB ID given is supposed to be incorrect (with length not equal to 4).
private  void setPdbId(java.lang.String pdbid)
          Sets PdbFetcher's PDB ID in uppercase.
private  void waitForRetrieval()
          Serves as a lock (should be invoked from the constructor).
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

pdbid

private java.lang.String pdbid

pdbContent

private java.lang.StringBuffer pdbContent

pdb

private PdbFile pdb

pdbsize

private int pdbsize

jButtonFtpPdbRetrieve

private javax.swing.JButton jButtonFtpPdbRetrieve

jButtonPdbFileChoose

private javax.swing.JButton jButtonPdbFileChoose

jFileChooserSelectPdb

private javax.swing.JFileChooser jFileChooserSelectPdb

jLabel1

private javax.swing.JLabel jLabel1

jLabelFtpPdbId

private javax.swing.JLabel jLabelFtpPdbId

jPanelGetPdbViaFtp

private javax.swing.JPanel jPanelGetPdbViaFtp

jPanelGetPdbViaLocal

private javax.swing.JPanel jPanelGetPdbViaLocal

jTextFieldFtpPdbId

private javax.swing.JTextField jTextFieldFtpPdbId
Constructor Detail

PdbFetcher

public PdbFetcher()
Creates new PdbFetcher and displays as a JFrame

Method Detail

centerWindow

private void centerWindow(java.awt.Component frame)
Displays any component in the center of the screen.

Parameters:
frame - usually a window

waitForRetrieval

private void waitForRetrieval()
Serves as a lock (should be invoked from the constructor). After JFrame appears, it's cruicial to have the complete PDB file read.


getPdbFtp

private void getPdbFtp(java.lang.String pdbid)
Retrieve peptide structure as a gzipped PDB file via http protocol. Performs getting from a location like http://www.rcsb.org/pdb/cgi/export.cgi/ZZZZ.pdb.gz?format=PDB&pdbId=ZZZZ&compression=gz where ZZZZ is the PDB id.

Parameters:
pdbid - a PDB ID in uppercase
See Also:
setPdbId(java.lang.String), getPdbId()

getPdbLoad

private void getPdbLoad(java.lang.String pdbpath)
Load the structure from a non-compressed PDB file on the local filesystem.

Parameters:
pdbpath - path to a local file containing PDB-formatted structure.
See Also:
getPdbFtp(java.lang.String), waitForRetrieval()

getPdbFile

public PdbFile getPdbFile()
Get pdb file read by the PdbFetcher.

Returns:
pdb PDB file read by a current instance of PdbFetcher

setPdbId

private void setPdbId(java.lang.String pdbid)
Sets PdbFetcher's PDB ID in uppercase. For retrieval from the RCSB server uppercase is essential.


getPdbId

public java.lang.String getPdbId()
Allows to read PDB ID of the PdbFetcher.

Returns:
four character, uppercase PDB ID

initComponents

private void initComponents()
This method is called from within the constructor to initialize the form. The content of this method is always regenerated by the Form Editor.


jTextFieldFtpPdbIdActionPerformed

private void jTextFieldFtpPdbIdActionPerformed(java.awt.event.ActionEvent evt)

jTextFieldFtpPdbIdKeyReleased

private void jTextFieldFtpPdbIdKeyReleased(java.awt.event.KeyEvent evt)
Sets jTextFieldFtpPdbId's backgroung pink if PDB ID given is supposed to be incorrect (with length not equal to 4).

Parameters:
evt - when a key is released

jButtonFtpPdbRetrieveActionPerformed

private void jButtonFtpPdbRetrieveActionPerformed(java.awt.event.ActionEvent evt)
Starts PDB file retrieval.


jButtonPdbFileChooseActionPerformed

private void jButtonPdbFileChooseActionPerformed(java.awt.event.ActionEvent evt)
Handles dialog window allowing to choose PDB file form a local filesystem.


VeaR/JEllipse