package com.collabinate.server.adminresources; import org.restlet.data.Status; import org.restlet.resource.Put; import org.restlet.resource.ServerResource; import com.collabinate.server.Tenant; import com.collabinate.server.engine.CollabinateAdmin; /** * Restful resource representing a tenant. * * @author mafuba * */ public class TenantResource extends ServerResource { @Put public void putTenant() { // extract necessary information from the context CollabinateAdmin admin = (CollabinateAdmin)getContext() .getAttributes().get("collabinateAdmin"); String tenantId = getAttribute("tenantId"); String tenantName = getQueryValue("name"); String tenantKey = getQueryValue("key"); // set defaults for values not provided if (null == tenantName || tenantName.equals("")) tenantName = tenantId; // create the tenant Tenant tenant = new Tenant(tenantId, tenantName); // add or generate the initial key if (null == tenantKey || tenantKey.equals("")) tenant.generateKey(); else tenant.addKey(tenantKey); // put the tenant admin.putTenant(tenant); setStatus(Status.SUCCESS_CREATED); } }