
com.emc.vipr.client.core.TenantResources Maven / Gradle / Ivy
/*
* Copyright (c) 2015 EMC Corporation
* All Rights Reserved
*/
package com.emc.vipr.client.core;
import com.emc.storageos.model.DataObjectRestRep;
import com.emc.storageos.model.NamedRelatedResourceRep;
import com.emc.vipr.client.core.filters.ResourceFilter;
import java.net.URI;
import java.util.List;
public interface TenantResources {
/**
* Convenience method for listing by the user's current tenant.
*
* Equivalent to: listByTenant(client.getUserTenant())
*
* @see #listByTenant(URI)
*/
public List listByUserTenant();
/**
* Convenience method for retrieving by user's current tenant.
*
* Equivalent to: getByTenant(client.getUserTenant())
*
* @see #getByTenant(URI)
*/
public List getByUserTenant();
/**
* Convenience method for retrieving by user's current tenant.
*
* Equivalent to: getByTenant(client.getUserTenant(), filter)
*
* @see #getByTenant(URI, ResourceFilter)
*/
public List getByUserTenant(ResourceFilter filter);
/**
* Lists resources associated with a given tenant.
*
* @param tenantId
* the tenant ID.
* @return the list of resource references.
*/
public List listByTenant(URI tenantId);
/**
* Gets the resources associated with a given tenant.
*
* @param tenantId
* the tenant ID.
* @return the list of resources for this tenant.
*
* @see Resources#getByRefs(java.util.Collection)
*/
public List getByTenant(URI tenantId);
/**
* Gets the resources associated with a given tenant, optionally filtering the results as they are returned.
*
* @param tenantId
* the tenant ID.
* @param filter
* the resource filter to apply to the results as they are returned (optional).
* @return the list of resources for the tenant.
*
* @see Resources#getByRefs(java.util.Collection, ResourceFilter)
*/
public List getByTenant(URI tenantId, ResourceFilter filter);
}