| Index: mojo/shell/identity.cc
|
| diff --git a/mojo/shell/identity.cc b/mojo/shell/identity.cc
|
| index c1c10e283717304153ae0e362f32f365b823a141..707615c80b7ab45a21caa812418b72a681ed6a4e 100644
|
| --- a/mojo/shell/identity.cc
|
| +++ b/mojo/shell/identity.cc
|
| @@ -4,38 +4,21 @@
|
|
|
| #include "mojo/shell/identity.h"
|
|
|
| +#include "mojo/shell/public/cpp/names.h"
|
| #include "mojo/shell/public/interfaces/shell.mojom.h"
|
|
|
| namespace mojo {
|
| namespace shell {
|
| -namespace {
|
| -
|
| -// It's valid to specify mojo: URLs in the filter either as mojo:foo or
|
| -// mojo://foo/ - but we store the filter in the latter form.
|
| -CapabilityFilter CanonicalizeFilter(const CapabilityFilter& filter) {
|
| - CapabilityFilter canonicalized;
|
| - for (CapabilityFilter::const_iterator it = filter.begin();
|
| - it != filter.end();
|
| - ++it) {
|
| - if (it->first == "*")
|
| - canonicalized[it->first] = it->second;
|
| - else
|
| - canonicalized[GURL(it->first).spec()] = it->second;
|
| - }
|
| - return canonicalized;
|
| -}
|
| -
|
| -} // namespace
|
|
|
| Identity::Identity() {}
|
|
|
| -Identity::Identity(const GURL& url)
|
| - : Identity(url, url.spec(), mojom::Connector::kUserRoot) {}
|
| +Identity::Identity(const std::string& name)
|
| + : Identity(name, GetNamePath(name), mojom::Connector::kUserRoot) {}
|
|
|
| -Identity::Identity(const GURL& url, const std::string& qualifier,
|
| +Identity::Identity(const std::string& name, const std::string& qualifier,
|
| uint32_t user_id)
|
| - : url_(url),
|
| - qualifier_(qualifier.empty() ? url_.spec() : qualifier),
|
| + : name_(name),
|
| + qualifier_(qualifier.empty() ? GetNamePath(name_) : qualifier),
|
| user_id_(user_id) {}
|
|
|
| Identity::~Identity() {}
|
| @@ -44,8 +27,8 @@ bool Identity::operator<(const Identity& other) const {
|
| // We specifically don't include filter in the equivalence check because we
|
| // don't quite know how this should work yet.
|
| // TODO(beng): figure out how it should work.
|
| - if (url_ != other.url_)
|
| - return url_ < other.url_;
|
| + if (name_ != other.name_)
|
| + return name_ < other.name_;
|
| if (qualifier_ != other.qualifier_)
|
| return qualifier_ < other.qualifier_;
|
| return user_id_ < other.user_id_;
|
| @@ -55,18 +38,13 @@ bool Identity::operator==(const Identity& other) const {
|
| // We specifically don't include filter in the equivalence check because we
|
| // don't quite know how this should work yet.
|
| // TODO(beng): figure out how it should work.
|
| - return other.url_ == url_ && other.qualifier_ == qualifier_ &&
|
| + return other.name_ == name_ && other.qualifier_ == qualifier_ &&
|
| other.user_id_ == user_id_;
|
| }
|
|
|
| -void Identity::SetFilter(const CapabilityFilter& filter) {
|
| - filter_ = CanonicalizeFilter(filter);
|
| -}
|
| -
|
| Identity CreateShellIdentity() {
|
| - Identity id =
|
| - Identity(GURL("mojo://shell/"), "", mojom::Connector::kUserRoot);
|
| - id.SetFilter(GetPermissiveCapabilityFilter());
|
| + Identity id = Identity("mojo:shell", "", mojom::Connector::kUserRoot);
|
| + id.set_filter(GetPermissiveCapabilityFilter());
|
| return id;
|
| }
|
|
|
|
|