View Javadoc
1   /*
2    * Copyright (C) 2013 4th Line GmbH, Switzerland
3    *
4    * The contents of this file are subject to the terms of either the GNU
5    * Lesser General Public License Version 2 or later ("LGPL") or the
6    * Common Development and Distribution License Version 1 or later
7    * ("CDDL") (collectively, the "License"). You may not use this file
8    * except in compliance with the License. See LICENSE.txt for more
9    * information.
10   *
11   * This program is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14   */
15  package example.localservice;
16  
17  import org.fourthline.cling.binding.annotations.*;
18  
19  @UpnpService(                                                                           // DOC:INC1
20          serviceId = @UpnpServiceId("MyService"),
21          serviceType = @UpnpServiceType(namespace = "mydomain", value = "MyService"),
22          stringConvertibleTypes = MyStringConvertible.class
23  )
24  public class MyServiceWithEnum {
25  
26      public enum Color {
27          Red,
28          Green,
29          Blue
30      }
31  
32      @UpnpStateVariable
33      private Color color;
34  
35      @UpnpAction(out = @UpnpOutputArgument(name = "Out"))
36      public Color getColor() {
37          return color;
38      }
39  
40      @UpnpAction
41      public void setColor(@UpnpInputArgument(name = "In") String color) {
42          this.color = Color.valueOf(color);
43      }
44  
45  } // DOC:INC1