public static void delete(Node node){
				
		synchronized(node){
			
			Node previous = node.getPrevious();
			Node next = node.getNext();
			
			if (previous!=null && next!=null){
				synchronized(previous){
					synchronized(next){
						next.setPrevious(previous);
						previous.setNext(next);
					}
				}				
			} else if (previous!=null){
				synchronized(previous){
					previous.setNext(null);
				}				
			} else {
				synchronized(next){
					next.setPrevious(null);
				}				
			}
			
			//Set the entire object to null
			node.setKey(null);
			node.setNext(null);
			node.setPrevious(null);
			
		}
		
	}