View Javadoc
1   package com.srv4pos.server.api.posplus;
2   
3   import com.srv4pos.server.api.infrastructure.Constraints;
4   import com.srv4pos.server.api.infrastructure.Info;
5   import org.springframework.roo.addon.javabean.RooJavaBean;
6   import org.springframework.roo.addon.json.RooJson;
7   import org.springframework.roo.addon.tostring.RooToString;
8   
9   import javax.validation.constraints.NotNull;
10  import javax.validation.constraints.Pattern;
11  import javax.validation.constraints.Size;
12  
13  /**
14   * Represents control unit access point (endpoint) to the control unit to connect it physically.
15   * <p>User: Kirill, Date: 22.02.14 11:32</p>
16   */
17  @RooJavaBean
18  @RooToString
19  @RooJson(deepSerialize = true)
20  public class ControlUnitEndpointInfo implements Info {
21  
22      private Long id;
23  
24      /**
25       * <p>This field uniqly identifies physical connection to which control unit is connected.
26       * Only the format (not for simulation, but for real life) allowed at the moment is file://{filename}.</p>
27       * <p>Under windows it is something like file://COM1 or file://COM11.<br>
28       * Under linux it is file:///dev/path/to/comport.</p>
29       * <p>For simulation of control unit it is sim://{controlUnitId}.</p>
30       * <p>For proxy server it is proxy://{controlUnitId}@{hostname}:{port}.<br>
31       * Example: proxy://PPLUS0001@localhost:43434</p>
32       */
33      @Size(max = 250, min = 1)
34      @NotNull
35      @Pattern(regexp = Constraints.ENDPOINT_IDENTIFIER_REGEX)
36      private String identifier;
37  }