
import ns org.eclipse.osbp.authentication.account.entities.UserAccount
import ns org.eclipse.osbp.authentication.account.entities.Filter
import ns org.eclipse.osbp.authentication.account.entities.UserGroup package org.eclipse.osbp.authentication.account.dtos {

	autoDto UserAccountDto wraps UserAccount {

		inheritVar id
		inheritVar email
		inheritVar userName
		inheritVar password
		inheritVar extraPassword
		inheritRef userGroup mapto UserGroupDto
		inheritVar position
		inheritVar defaultPerspective
		inheritVar notRegistered
		inheritVar enabled
		inheritVar locked
		inheritVar passwordReset
		inheritVar superuser
		inheritVar forcePwdChange
		inheritVar failedAttempt
		inheritVar successfulAttempt
		inheritVar cookieHashCode
		inheritVar localeTag
		inheritVar profileimage
		inheritVar theme
		inheritVar printService
		inheritVar savedProperties
		inheritVar dashBoard
		inheritVar favorites
		inheritVar filters
	}

	autoDto FilterDto wraps Filter {

		inheritVar id
		inheritVar ^filter
		inheritVar invers
		inheritRef userGroup mapto UserGroupDto
	}

	autoDto UserGroupDto wraps UserGroup {

		inheritVar id
		inheritVar userGroupName
		inheritVar position
		inheritVar defaultPerspective
		inheritVar localeTag
		inheritVar theme
		inheritVar printService
		inheritRef userAccount mapto UserAccountDto
		inheritRef userGroupFilter mapto FilterDto
	}
}