| //////////////////////////////////////////////////////////////////////////////// |
| // Do not modify! |
| // Generated by codergen |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| package service |
| |
| import ( |
| "fmt" |
| "io" |
| "runtime/debug" |
| |
| "android.googlesource.com/platform/tools/gpu/binary" |
| "android.googlesource.com/platform/tools/gpu/config" |
| "android.googlesource.com/platform/tools/gpu/log" |
| "android.googlesource.com/platform/tools/gpu/rpc" |
| ) |
| |
| func BindServer(r io.Reader, w io.Writer, c io.Closer, mtu int, l log.Logger, server Service) { |
| rpc.Serve(r, w, c, mtu, l, func(in interface{}) (res binary.Object) { |
| l := log.Enter(log.Fork(l), fmt.Sprintf("%T", in)) |
| defer func() { |
| if err := recover(); err == nil { |
| if config.DebugRPCCalls { |
| log.Infof(l, "returned: %v", res) |
| } |
| } else { |
| msg := fmt.Sprintf("Panic: %v\n%v", err, string(debug.Stack())) |
| log.Errorf(l, msg) |
| res = rpc.NewError(msg) |
| } |
| }() |
| switch call := in.(type) { |
| case *callFollow: |
| if res, err := server.Follow(call.p, l); err == nil { |
| return &resultFollow{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGet: |
| if res, err := server.Get(call.p, l); err == nil { |
| return &resultGet{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGetCaptures: |
| if res, err := server.GetCaptures(l); err == nil { |
| return &resultGetCaptures{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGetDevices: |
| if res, err := server.GetDevices(l); err == nil { |
| return &resultGetDevices{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGetFramebufferColor: |
| if res, err := server.GetFramebufferColor(call.device, call.after, call.settings, l); err == nil { |
| return &resultGetFramebufferColor{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGetFramebufferDepth: |
| if res, err := server.GetFramebufferDepth(call.device, call.after, l); err == nil { |
| return &resultGetFramebufferDepth{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGetSchema: |
| if res, err := server.GetSchema(l); err == nil { |
| return &resultGetSchema{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callGetTimingInfo: |
| if res, err := server.GetTimingInfo(call.device, call.capture, call.flags, l); err == nil { |
| return &resultGetTimingInfo{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callImportCapture: |
| if res, err := server.ImportCapture(call.name, call.Data, l); err == nil { |
| return &resultImportCapture{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callLoadCapture: |
| if res, err := server.LoadCapture(call.path, l); err == nil { |
| return &resultLoadCapture{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| case *callSet: |
| if res, err := server.Set(call.p, call.v, l); err == nil { |
| return &resultSet{value: res} |
| } else { |
| return rpc.NewError(err.Error()) |
| } |
| default: |
| return rpc.NewError("Unexpected Service function: %T", call) |
| } |
| }) |
| } |