code: public List<CmsResource> readAllSubscribedResources(
          CmsRequestContext context,
          String poolName,
          CmsPrincipal principal)
      throws CmsException {
  
          List<CmsResource> result = null;
          CmsDbContext dbc = m_dbContextFactory.getDbContext(context);
          try {
              result = m_driverManager.readAllSubscribedResources(dbc, poolName, principal);
          } catch (Exception e) {
              if (principal instanceof CmsUser) {
                  dbc.report(
                      null,
                      Messages.get().container(Messages.ERR_READ_SUBSCRIBED_RESOURCES_ALL_USER_1, principal.getName()),
                      e);
              } else {
                  dbc.report(
                      null,
                      Messages.get().container(Messages.ERR_READ_SUBSCRIBED_RESOURCES_ALL_GROUP_1, principal.getName()),
                      e);
              }
          } finally {
              dbc.clear();
          }
          return result;
      }
docs: Returns all resources subscribed by the given user or group.<p>
  
  @param context the request context
  @param poolName the name of the database pool to use
  @param principal the principal to read the subscribed resources
  
  @return all resources subscribed by the given user or group
  
  @throws CmsException if something goes wrong