# Path: subuserlib/classes/userOwnedObject.py
# class UserOwnedObject(object):
#   def __init__(self,user):
#     self.user = user
# 
# Path: subuserlib/classes/fileBackedObject.py
# class FileBackedObject():
#   __metaclass__ = abc.ABCMeta
# 
#   @abc.abstractmethod
#   def save(self):
#     """ Serialize the object to it's appropriate location on disk. """
#     pass


import collections
import hashlib
import sys
import subuserlib.permissions
from subuserlib.classes.userOwnedObject import UserOwnedObject
from subuserlib.classes.fileBackedObject import FileBackedObject
# -*- coding: utf-8 -*-

"""
Each subuser has a set of permissions which specify what parts of the host system it is allowed to access.
"""

#external imports
#internal imports

class Permissions(collections.OrderedDict,UserOwnedObject,FileBackedObject):
  def __init__(self,user,initialPermissions,writePath=None):
    self.writePath = writePath

# Path: subuserlib/classes/userOwnedObject.py
# class UserOwnedObject(object):
#   def __init__(self,user):
#     self.user = user
# 
# Path: subuserlib/classes/fileBackedObject.py
# class FileBackedObject():
#   __metaclass__ = abc.ABCMeta
# 
#   @abc.abstractmethod
#   def save(self):
#     """ Serialize the object to it's appropriate location on disk. """
#     pass


# Path: subuserlib/classes/permissions.py
import collections
import hashlib
import sys
import subuserlib.permissions
from subuserlib.classes.userOwnedObject import UserOwnedObject
from subuserlib.classes.fileBackedObject import FileBackedObject

# -*- coding: utf-8 -*-

"""
Each subuser has a set of permissions which specify what parts of the host system it is allowed to access.
"""

#external imports
#internal imports

class Permissions(collections.OrderedDict,UserOwnedObject,FileBackedObject):
  def __init__(self,user,initialPermissions,writePath=None):
    self.writePath = writePath

    UserOwnedObject.__init__(self,user)