| // Package application contains implementation of the interface for |
| // serving application metadata. |
| package application |
| |
| import "veyron2/security" |
| import public "veyron2/services/mgmt/application" |
| |
| // Repository describes an application repository internally. Besides |
| // the public Repository interface, it allows to manage the actual |
| // application metadata. |
| type Repository interface { |
| public.Repository |
| // Put adds the given tuple of application version (specified |
| // through the veyron name suffix) and application envelope to all |
| // of the given application profiles. |
| Put(Profiles []string, Envelope public.Envelope) error {security.WriteLabel} |
| // Remove removes the application envelope for the given profile |
| // name and application version (specified through the veyron name |
| // suffix). If no version is specified as part of the suffix, the |
| // method removes all versions for the given profile. |
| // |
| // TODO(jsimsa): Add support for using "*" to specify all profiles |
| // when Matt implements Globing (or Ken implements querying). |
| Remove(Profile string) error {security.WriteLabel} |
| } |