| // Package namespace defines an RPC services that allows remoting of the |
| // namespace client library over the wire. This is useful for |
| // javascript so it doesn't have to implement the library. |
| // This should be kept in sync with the namespace library (v.io/v23/naming). |
| package namespace |
| |
| import ( |
| "time" |
| |
| "v.io/v23/naming" |
| "v.io/v23/security" |
| "v.io/v23/services/security/access" |
| |
| ) |
| |
| // TODO(nlacasse,bprosnitz): Remove this unused type and the security import |
| // once https://github.com/veyron/release-issues/issues/1202 is fixed. |
| type Workaround interface { |
| Unused(unused security.BlessingPattern) error |
| } |
| |
| type Namespace interface { |
| // Run a glob query and stream the results. |
| Glob(pattern string) stream<_, naming.VDLGlobReply> error |
| // Mount mounts a server under the given name. |
| Mount(name, server string, ttl time.Duration, replace bool) error |
| // Unmount removes an existing mount point. |
| Unmount(name, server string) error |
| // Resolve resolves a name to an address. |
| Resolve(name string) ([]string | error) |
| // ResolveToMt resolves a name to the address of the mounttable directly |
| // hosting it. |
| ResolveToMT(name string) ([]string | error) |
| // FlushCacheEntry removes the namespace cache entry for a given name. |
| FlushCacheEntry(name string) (bool | error) |
| // DisableCache disables the naming cache. |
| DisableCache(disable bool) error |
| // Roots returns the addresses of the current mounttable roots. |
| Roots() ([]string | error) |
| // SetRoots sets the current mounttable roots. |
| SetRoots(roots []string) error |
| // SetACL sets the ACL in a node in a mount table. |
| SetACL(name string, acl access.TaggedACLMap, etag string) error |
| // GetACL returns the ACL in a node in a mount table. |
| GetACL(name string) (acl access.TaggedACLMap, etag string | error) |
| // Delete deletes the name from the mounttable and, if requested, any subtree. |
| Delete(name string, deleteSubtree bool) error |
| } |