You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

76 lines
1.5 KiB

  1. // Copyright 2011 - 2012 Xing Xing <mikespook@gmail.com>.
  2. // All rights reserved.
  3. // Use of this source code is governed by a MIT
  4. // license that can be found in the LICENSE file.
  5. package client
  6. const (
  7. NETWORK = "tcp"
  8. // queue size
  9. QUEUE_SIZE = 8
  10. // read buffer size
  11. BUFFER_SIZE = 1024
  12. // min packet length
  13. MIN_PACKET_LEN = 12
  14. // \x00REQ
  15. REQ = 5391697
  16. REQ_STR = "\x00REQ"
  17. // \x00RES
  18. RES = 5391699
  19. RES_STR = "\x00RES"
  20. // package data type
  21. CAN_DO = 0x1
  22. CANT_DO = 0x2
  23. RESET_ABILITIES = 0x3
  24. PRE_SLEEP = 0x4
  25. NOOP = 0x6
  26. JOB_CREATED = 0x8
  27. GRAB_JOB = 0x9
  28. NO_JOB = 0xa
  29. JOB_ASSIGN = 0xb
  30. WORK_STATUS = 0xc
  31. WORK_COMPLETE = 0xd
  32. WORK_FAIL = 0xe
  33. GET_STATUS = 0xf
  34. ECHO_REQ = 0x10
  35. ECHO_RES = 0x11
  36. ERROR = 0x13
  37. STATUS_RES = 0x14
  38. SET_CLIENT_ID = 0x16
  39. CAN_DO_TIMEOUT = 0x17
  40. WORK_EXCEPTION = 0x19
  41. WORK_DATA = 0x1c
  42. WORK_WARNING = 0x1d
  43. GRAB_JOB_UNIQ = 0x1e
  44. JOB_ASSIGN_UNIQ = 0x1f
  45. SUBMIT_JOB = 7
  46. SUBMIT_JOB_BG = 18
  47. SUBMIT_JOB_HIGH = 21
  48. SUBMIT_JOB_HIGH_BG = 32
  49. SUBMIT_JOB_LOW = 33
  50. SUBMIT_JOB_LOW_BG = 34
  51. )
  52. const (
  53. // Job type
  54. // JOB_NORMAL | JOB_BG means a normal level job run in background
  55. // normal level
  56. JOB_NORMAL = 0
  57. // background job
  58. JOB_BG = 1
  59. // low level
  60. JOB_LOW = 2
  61. // high level
  62. JOB_HIGH = 4
  63. )
  64. func getBuffer(l int) (buf []byte) {
  65. // TODO add byte buffer pool
  66. buf = make([]byte, l)
  67. return
  68. }