This file is indexed.

/usr/share/gocode/src/github.com/coreos/go-etcd/etcd/set_update_create.go is in golang-github-coreos-go-etcd-dev 2.0.0-4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
package etcd

// Set sets the given key to the given value.
// It will create a new key value pair or replace the old one.
// It will not replace a existing directory.
func (c *Client) Set(key string, value string, ttl uint64) (*Response, error) {
	raw, err := c.RawSet(key, value, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

// SetDir sets the given key to a directory.
// It will create a new directory or replace the old key value pair by a directory.
// It will not replace a existing directory.
func (c *Client) SetDir(key string, ttl uint64) (*Response, error) {
	raw, err := c.RawSetDir(key, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

// CreateDir creates a directory. It succeeds only if
// the given key does not yet exist.
func (c *Client) CreateDir(key string, ttl uint64) (*Response, error) {
	raw, err := c.RawCreateDir(key, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

// UpdateDir updates the given directory. It succeeds only if the
// given key already exists.
func (c *Client) UpdateDir(key string, ttl uint64) (*Response, error) {
	raw, err := c.RawUpdateDir(key, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

// Create creates a file with the given value under the given key.  It succeeds
// only if the given key does not yet exist.
func (c *Client) Create(key string, value string, ttl uint64) (*Response, error) {
	raw, err := c.RawCreate(key, value, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

// CreateInOrder creates a file with a key that's guaranteed to be higher than other
// keys in the given directory. It is useful for creating queues.
func (c *Client) CreateInOrder(dir string, value string, ttl uint64) (*Response, error) {
	raw, err := c.RawCreateInOrder(dir, value, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

// Update updates the given key to the given value.  It succeeds only if the
// given key already exists.
func (c *Client) Update(key string, value string, ttl uint64) (*Response, error) {
	raw, err := c.RawUpdate(key, value, ttl)

	if err != nil {
		return nil, err
	}

	return raw.Unmarshal()
}

func (c *Client) RawUpdateDir(key string, ttl uint64) (*RawResponse, error) {
	ops := Options{
		"prevExist": true,
		"dir":       true,
	}

	return c.put(key, "", ttl, ops)
}

func (c *Client) RawCreateDir(key string, ttl uint64) (*RawResponse, error) {
	ops := Options{
		"prevExist": false,
		"dir":       true,
	}

	return c.put(key, "", ttl, ops)
}

func (c *Client) RawSet(key string, value string, ttl uint64) (*RawResponse, error) {
	return c.put(key, value, ttl, nil)
}

func (c *Client) RawSetDir(key string, ttl uint64) (*RawResponse, error) {
	ops := Options{
		"dir": true,
	}

	return c.put(key, "", ttl, ops)
}

func (c *Client) RawUpdate(key string, value string, ttl uint64) (*RawResponse, error) {
	ops := Options{
		"prevExist": true,
	}

	return c.put(key, value, ttl, ops)
}

func (c *Client) RawCreate(key string, value string, ttl uint64) (*RawResponse, error) {
	ops := Options{
		"prevExist": false,
	}

	return c.put(key, value, ttl, ops)
}

func (c *Client) RawCreateInOrder(dir string, value string, ttl uint64) (*RawResponse, error) {
	return c.post(dir, value, ttl)
}