test/jdk/javax/management/remote/rest/data/QueueSampler.java
branchjmx-rest-api
changeset 55994 9721e36abeb0
equal deleted inserted replaced
55987:0daf2ad15492 55994:9721e36abeb0
       
     1 package javax.management.remote.rest.test.data;
       
     2 
       
     3 /*
       
     4  * QueueSampler.java - MXBean implementation for the QueueSampler MXBean.
       
     5  * This class must implement all the Java methods declared in the
       
     6  * QueueSamplerMXBean interface, with the appropriate behavior for each one.
       
     7  */
       
     8 
       
     9 
       
    10 import java.util.Date;
       
    11 import java.util.List;
       
    12 import java.util.Queue;
       
    13 
       
    14 public class QueueSampler implements QueueSamplerMXBean {
       
    15 
       
    16     private Queue<String> queue;
       
    17     private QueueSample sample;
       
    18     private String name;
       
    19 
       
    20     public QueueSampler(Queue<String> queue) {
       
    21         this.queue = queue;
       
    22         synchronized (queue) {
       
    23             sample = new QueueSample(new Date(), queue.size(), queue.peek());
       
    24         }
       
    25         name = "BoogeyMan";
       
    26     }
       
    27 
       
    28     public QueueSample getQueueSample() {
       
    29         return sample;
       
    30     }
       
    31     
       
    32     public void clearQueue() {
       
    33         synchronized (queue) {
       
    34             queue.clear();
       
    35         }
       
    36     }
       
    37 
       
    38     @Override
       
    39     public String[] testMethod1(int[] param2, String param1, int sd34, String[] param3, QueueSample[] param4, List<QueueSample> param5) {
       
    40         System.out.println("########## Invoke TestMethod1");
       
    41         return new String[]{"1","2","3","4","5"};
       
    42     }
       
    43 
       
    44     @Override
       
    45     public void setQueueSample(QueueSample sample) {
       
    46         this.sample = sample;
       
    47     }
       
    48 
       
    49     @Override
       
    50     public String getQueueName() {
       
    51         return name;
       
    52     }
       
    53 
       
    54     @Override
       
    55     public void setQueueName(String name) {
       
    56         this.name = name;
       
    57     }
       
    58 }