コード例 #1
0
ファイル: object.go プロジェクト: boydc2014/rados.go
// Remove deletes the named object in the pool referenced by the given context.
func (c *Context) Remove(name string) error {
	cname := C.CString(name)
	defer C.free(unsafe.Pointer(cname))

	if cerr := C.rados_remove(c.ctx, cname); cerr != 0 {
		return fmt.Errorf("RADOS remove: %s: %s", name, strerror(cerr))
	}

	return nil
}
コード例 #2
0
ファイル: object.go プロジェクト: glycerine/radosgo
// Remove deletes the named object in the pool referenced by the given context.
func (c *Context) Remove(name string) error {
	cname := C.CString(name)
	defer C.free(unsafe.Pointer(cname))

	if cerr := C.rados_remove(c.ctx, cname); cerr != 0 {
		return radosReturnCodeError(cerr)
	}

	return nil
}
コード例 #3
0
ファイル: objects.go プロジェクト: objStorage/grados
// Remove removes the object from the pool.
func (o *Object) Remove() error {
	oid := C.CString(o.name)
	defer freeString(oid)
	ret := C.rados_remove(o.ioContext, oid)
	if err := toRadosError(ret); err != nil {
		err.Message = fmt.Sprintf("Unable to delete object %s", o.name)
		return err
	}
	return nil
}
コード例 #4
0
ファイル: rados_io.go プロジェクト: vuleetu/gorados
func (r *RadosIoCtx) Remove(oid string) error {
	coid := C.CString(oid)
	defer func() {
		C.free(unsafe.Pointer(coid))
	}()
	cerr := C.rados_remove(*r.ctx, coid)
	if cerr < 0 {
		return errors.New("remove object failed")
	}
	return nil
}
コード例 #5
0
ファイル: pool.go プロジェクト: wenjianhn/radoshttpd
// Delete deletes the object with key oid. It returns an error, if any.
func (p *Pool) Delete(oid string) error {
	c_oid := C.CString(oid)
	defer C.free(unsafe.Pointer(c_oid))

	ret := C.rados_remove(p.ioctx, c_oid)

	if ret == 0 {
		return nil
	} else {
		return RadosError(int(ret))
	}
}
コード例 #6
0
ファイル: ioctx.go プロジェクト: mittalms/go-ceph
// Delete deletes the object with key oid. It returns an error, if any.
func (ioctx *IOContext) Delete(oid string) error {
	c_oid := C.CString(oid)
	defer C.free(unsafe.Pointer(c_oid))

	return GetRadosError(C.rados_remove(ioctx.ioctx, c_oid))
}