def _defaultOnEntitySchemaInfoCreate(sgEntitySchemaInfo): fieldInfoData = ShotgunORM.SgFieldSchemaInfo.createSchemaData( sgEntitySchemaInfo.name(), 'type', ShotgunORM.SgField.RETURN_TYPE_TEXT, editable=False, label='Type') fieldInfoData['commitable'] = False fieldInfoData['queryable'] = False fieldInfo = ShotgunORM.SgFieldSchemaInfo(fieldInfoData) sgEntitySchemaInfo._fieldInfos['type'] = fieldInfo
def _entityFix(schema, schemaData): ''' Returns Entities that dont exist in the API but fields return them as values. * Currently returns * 1: Banner Entity 2: AppWelcome Entity ''' idInfoData = ShotgunORM.SgFieldSchemaInfo.createSchemaData( 'Banner', 'id', ShotgunORM.SgField.RETURN_TYPE_INT, editable=False, doc='Entity ID', label='Id') nameInfoData = ShotgunORM.SgFieldSchemaInfo.createSchemaData( 'Banner', 'name', ShotgunORM.SgField.RETURN_TYPE_TEXT, editable=False, label='Name') bannerFieldInfos = { 'name': ShotgunORM.SgFieldSchemaInfo(nameInfoData), 'id': ShotgunORM.SgFieldSchemaInfo(idInfoData) } BannerEntity = ShotgunORM.SgEntitySchemaInfo(schema, 'Banner', 'Banner', bannerFieldInfos, {}) ShotgunORM.onEntitySchemaInfoCreate(BannerEntity) idInfoData = ShotgunORM.SgFieldSchemaInfo.createSchemaData( 'AppWelcome', 'id', ShotgunORM.SgField.RETURN_TYPE_INT, doc='Entity ID', editable=False, label='Id') nameInfoData = ShotgunORM.SgFieldSchemaInfo.createSchemaData( 'AppWelcome', 'name', ShotgunORM.SgField.RETURN_TYPE_TEXT, editable=False, label='Name') appwelcomeFieldInfos = { 'name': ShotgunORM.SgFieldSchemaInfo(nameInfoData), 'id': ShotgunORM.SgFieldSchemaInfo(idInfoData) } AppWelcomeEntity = ShotgunORM.SgEntitySchemaInfo(schema, 'AppWelcome', 'AppWelcome', appwelcomeFieldInfos, {}) ShotgunORM.onEntitySchemaInfoCreate(AppWelcomeEntity) schemaData['AppWelcome'] = AppWelcomeEntity schemaData['Banner'] = BannerEntity