From 2faba0bf4be87e81f81ca12e376dee137f78d649 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Thu, 14 Feb 2013 16:24:07 -0700 Subject: 393473 - Add support for JSR-356 (javax.websocket) draft + Start of @WebSocketClient class/method scanning with tests --- .../jsr356/endpoints/JavaxPojoAnnotationCache.java | 75 ---------------------- 1 file changed, 75 deletions(-) delete mode 100644 jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JavaxPojoAnnotationCache.java (limited to 'jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JavaxPojoAnnotationCache.java') diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JavaxPojoAnnotationCache.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JavaxPojoAnnotationCache.java deleted file mode 100644 index d8524faae6..0000000000 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JavaxPojoAnnotationCache.java +++ /dev/null @@ -1,75 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2012 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.jsr356.endpoints; - -import java.lang.annotation.Annotation; -import java.lang.reflect.Method; -import java.util.concurrent.ConcurrentHashMap; - -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.websocket.common.events.annotated.AbstractMethodAnnotationScanner; - -/** - * Cache for discovered javax.websocket {@link WebSocketEndpoint @WebSocketEndpoint} annotated websockets - */ -public class JavaxPojoAnnotationCache extends AbstractMethodAnnotationScanner -{ - private static final Logger LOG = Log.getLogger(JavaxPojoAnnotationCache.class); - public static final JavaxPojoAnnotationCache INSTANCE = new JavaxPojoAnnotationCache(); - - public synchronized static JavaxPojoMetadata discover(Class websocket) - { - // TODO: move to server side deployer - // WebSocketEndpoint anno = websocket.getAnnotation(WebSocketEndpoint.class); - // if (anno == null) - // { - // return null; - // } - - JavaxPojoMetadata metadata = INSTANCE.cache.get(websocket); - if (metadata == null) - { - metadata = new JavaxPojoMetadata(); - INSTANCE.scanMethodAnnotations(metadata,websocket); - INSTANCE.cache.put(websocket,metadata); - } - - return metadata; - } - - public static JavaxPojoMetadata discover(Object websocket) - { - return discover(websocket.getClass()); - } - - private ConcurrentHashMap, JavaxPojoMetadata> cache; - - public JavaxPojoAnnotationCache() - { - cache = new ConcurrentHashMap<>(); - } - - @Override - public void onMethodAnnotation(JavaxPojoMetadata metadata, Class pojo, Method method, Annotation annotation) - { - LOG.debug("onMethodAnnotation({}, {}, {}, {})",metadata,pojo,method,annotation); - // TODO Auto-generated method stub - } -} -- cgit v1.2.3