From adbb6e64e6a2d772f716ffd2a648b78626c242bd Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Sun, 3 Jan 2010 20:56:17 +0000 Subject: [PATCH] initial checkin --- sfa/util/namespace.py | 49 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 sfa/util/namespace.py diff --git a/sfa/util/namespace.py b/sfa/util/namespace.py new file mode 100644 index 00000000..edd026a6 --- /dev/null +++ b/sfa/util/namespace.py @@ -0,0 +1,49 @@ +### $Id: namespace.py 15020 2009-09-14 23:11:37Z tmack $ +### $URL: https://svn.planet-lab.org/svn/sfa/trunk/sfa/util/namespace.py $ + +from sfa.util.faults import * + +def get_leaf(hrn): + parts = hrn.split(".") + return ".".join(parts[-1:]) + +def get_authority(hrn): + parts = hrn.split(".") + return ".".join(parts[:-1]) + +def hrn_to_pl_slicename(hrn): + parts = hrn.split(".") + return parts[-2] + "_" + parts[-1] + +# assuming hrn is the hrn of an authority, return the plc authority name +def hrn_to_pl_authname(hrn): + parts = hrn.split(".") + return parts[-1] + +# assuming hrn is the hrn of an authority, return the plc login_base +def hrn_to_pl_login_base(hrn): + return hrn_to_pl_authname(hrn) + +def hostname_to_hrn(auth_hrn, login_base, hostname): + """ + Convert hrn to plantelab name. + """ + genihostname = ".".join([auth_hrn, login_base, hostname.split(".")[0]]) + return genihostname + +def slicename_to_hrn(auth_hrn, slicename): + """ + Convert hrn to planetlab name. + """ + parts = slicename.split("_") + slice_hrn = ".".join([auth_hrn, parts[0]]) + "." + "_".join(parts[1:]) + + return slice_hrn + +def email_to_hrn(auth_hrn, email): + parts = email.split("@") + username = parts[0] + username = username.replace(".", "_") + person_hrn = ".".join([auth_hrn, username]) + + return person_hrn -- 2.43.0