uk.ac.soton.itinnovation.grid.service.sla
Class SLA

java.lang.Object
  extended by uk.ac.soton.itinnovation.grid.service.types.GridResource
      extended by uk.ac.soton.itinnovation.grid.service.sla.ResourceWithUsageByMetric
          extended by uk.ac.soton.itinnovation.grid.service.sla.SLA

public class SLA
extends ResourceWithUsageByMetric


Constructor Summary
SLA()
          Empty constructor required by Hibernate.
 
Method Summary
 void addActivity(Activity activity)
           
 void addConstraint(Constraint constraint)
           
 void addPermittedService(PermittedService service)
           
 void addPricingTerm(PricingTerm pricingTerm)
           
 void addUsageSummary(UsageSummary u)
           
 void close()
           
 void closeNoActivities()
           
 boolean constrains(Metric metric)
           
 boolean equalsByValue(Object obj)
           
 org.apache.axis.message.addressing.EndpointReferenceType getAccount()
           
 Set<Activity> getActivities()
          Return all activities in this SLA, regardless of their state.
 TimePeriod getBillingPeriod()
           
 List<PeriodBill> getBills(GregorianCalendar now)
          Return all unbilled whole periods.
 Date getClosedDate()
           
 Set<Metric> getConstrainedMetrics()
           
 Set<Constraint> getConstraints()
           
 List<Constraint> getConstraints(Metric metric)
           
 String getCurrency()
           
 GregorianCalendar getEndTime()
           
 List<PeriodBill> getFinalBills(GregorianCalendar now)
          Return all unbilled periods and the final bill for a partial period.
 GregorianCalendar getLastBillTime()
           
 List<PeriodBill> getPartialBill(GregorianCalendar now)
          Return subscription bill and usage bill from last bill time to now.
 Set<PermittedService> getPermittedServices()
           
 Set<Metric> getPricedMetrics()
           
 Set<PricingTerm> getPricingTerms()
           
 List<PricingTerm> getPricingTerms(Metric metric)
           
 Set<Constraint> getPublicConstraints()
           
 ResourcePool getResourcePool()
           
 String getResourceType()
          Return the PBAC type of the resource.
 GregorianCalendar getStartTime()
           
 SLAState getState()
           
 BigDecimal getSubscriptionFee()
           
 SLATemplate getTerms()
           
 BigDecimal getUnbilledTotal()
           
 BigDecimal getUnbilledTotal(GregorianCalendar now)
           
 Set<Metric> getUsageMetrics()
          Get the Set of Metrics that have had Usage reported in this SLA.
 UsageSummary getUsageSummary(Metric metric)
           
 Iterator<Activity> iterateActivities()
          Get an iterator for all the Activities in this SLA, ordered most recent startTimeDate first.
 boolean permitsEPR(org.apache.axis.message.addressing.EndpointReferenceType epr)
           
 void sendBills(List<PeriodBill> bills)
           
 void setAccount(org.apache.axis.message.addressing.EndpointReferenceType account)
           
 void setActivities(Set<Activity> argActivities)
           
 void setBillingPeriod(TimePeriod argBillingPeriod)
           
 void setClosedDate(Date cd)
           
 void setConstraints(Set<Constraint> argConstraints)
           
 void setCurrency(String argCurrency)
           
 void setEndTime(GregorianCalendar argEndTime)
           
 void setLastBillTime(GregorianCalendar argLastBillTime)
           
 void setPermittedServices(Set<PermittedService> argPermittedServices)
           
 void setPricingTerms(Set<PricingTerm> argPricingTerms)
           
 void setResourcePool(ResourcePool argResourcePool)
          The ResourcePool.addSLA() method calls this method.
 void setStartTime(GregorianCalendar argStartTime)
           
 void setState(SLAState argState)
           
 void setSubscriptionFee(BigDecimal fee)
           
 void setUsageSummarys(Set<UsageSummary> argUsageSummarys)
           
 Activity startActivity(org.apache.axis.message.addressing.EndpointReferenceType activityEPR, Set<Constraint> actConstraints)
           
 Activity startActivityNoCheck(org.apache.axis.message.addressing.EndpointReferenceType activityEPR, Set<Constraint> actConstraints)
           
 
Methods inherited from class uk.ac.soton.itinnovation.grid.service.sla.ResourceWithUsageByMetric
getId, getParent, getUsageSummarys, setId, setParent
 
Methods inherited from class uk.ac.soton.itinnovation.grid.service.types.GridResource
getLabel, getManagementResource, getResourceID, includeInGetResources, setLabel, setManagementResource, setResourceID
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SLA

public SLA()
Empty constructor required by Hibernate.

Method Detail

getResourceType

public String getResourceType()
Description copied from class: GridResource
Return the PBAC type of the resource.

Overrides:
getResourceType in class ResourceWithUsageByMetric

getTerms

public SLATemplate getTerms()
                     throws GridFailureException
Throws:
GridFailureException

getAccount

public org.apache.axis.message.addressing.EndpointReferenceType getAccount()

setAccount

public void setAccount(org.apache.axis.message.addressing.EndpointReferenceType account)

getPermittedServices

public Set<PermittedService> getPermittedServices()

setPermittedServices

public void setPermittedServices(Set<PermittedService> argPermittedServices)

getActivities

public Set<Activity> getActivities()
Return all activities in this SLA, regardless of their state.


setActivities

public void setActivities(Set<Activity> argActivities)

getConstraints

public Set<Constraint> getConstraints()

setConstraints

public void setConstraints(Set<Constraint> argConstraints)

getPublicConstraints

public Set<Constraint> getPublicConstraints()

getPricingTerms

public Set<PricingTerm> getPricingTerms()

setPricingTerms

public void setPricingTerms(Set<PricingTerm> argPricingTerms)

setUsageSummarys

public void setUsageSummarys(Set<UsageSummary> argUsageSummarys)
Overrides:
setUsageSummarys in class ResourceWithUsageByMetric

getStartTime

public GregorianCalendar getStartTime()

setStartTime

public void setStartTime(GregorianCalendar argStartTime)

getEndTime

public GregorianCalendar getEndTime()

setEndTime

public void setEndTime(GregorianCalendar argEndTime)

getBillingPeriod

public TimePeriod getBillingPeriod()

setBillingPeriod

public void setBillingPeriod(TimePeriod argBillingPeriod)

getState

public SLAState getState()

setState

public void setState(SLAState argState)

getLastBillTime

public GregorianCalendar getLastBillTime()

setLastBillTime

public void setLastBillTime(GregorianCalendar argLastBillTime)

getSubscriptionFee

public BigDecimal getSubscriptionFee()

setSubscriptionFee

public void setSubscriptionFee(BigDecimal fee)

getResourcePool

public ResourcePool getResourcePool()

setResourcePool

public void setResourcePool(ResourcePool argResourcePool)
The ResourcePool.addSLA() method calls this method.


getCurrency

public String getCurrency()

setCurrency

public void setCurrency(String argCurrency)

getClosedDate

public Date getClosedDate()

setClosedDate

public void setClosedDate(Date cd)

addPermittedService

public void addPermittedService(PermittedService service)

addActivity

public void addActivity(Activity activity)

addConstraint

public void addConstraint(Constraint constraint)

getConstraints

public List<Constraint> getConstraints(Metric metric)

addPricingTerm

public void addPricingTerm(PricingTerm pricingTerm)

getPricingTerms

public List<PricingTerm> getPricingTerms(Metric metric)

addUsageSummary

public void addUsageSummary(UsageSummary u)

getUsageMetrics

public Set<Metric> getUsageMetrics()
Get the Set of Metrics that have had Usage reported in this SLA.


getConstrainedMetrics

public Set<Metric> getConstrainedMetrics()

getPricedMetrics

public Set<Metric> getPricedMetrics()

getUsageSummary

public UsageSummary getUsageSummary(Metric metric)

startActivity

public Activity startActivity(org.apache.axis.message.addressing.EndpointReferenceType activityEPR,
                              Set<Constraint> actConstraints)
                       throws PrivateConstraintBreachException,
                              PublicConstraintBreachException,
                              GridFailureException
Throws:
PrivateConstraintBreachException
PublicConstraintBreachException
GridFailureException

startActivityNoCheck

public Activity startActivityNoCheck(org.apache.axis.message.addressing.EndpointReferenceType activityEPR,
                                     Set<Constraint> actConstraints)

getFinalBills

public List<PeriodBill> getFinalBills(GregorianCalendar now)
Return all unbilled periods and the final bill for a partial period.


getUnbilledTotal

public BigDecimal getUnbilledTotal(GregorianCalendar now)

getUnbilledTotal

public BigDecimal getUnbilledTotal()

getPartialBill

public List<PeriodBill> getPartialBill(GregorianCalendar now)
Return subscription bill and usage bill from last bill time to now.


getBills

public List<PeriodBill> getBills(GregorianCalendar now)
Return all unbilled whole periods.


sendBills

public void sendBills(List<PeriodBill> bills)

permitsEPR

public boolean permitsEPR(org.apache.axis.message.addressing.EndpointReferenceType epr)

constrains

public boolean constrains(Metric metric)

close

public void close()

closeNoActivities

public void closeNoActivities()

iterateActivities

public Iterator<Activity> iterateActivities()
Get an iterator for all the Activities in this SLA, ordered most recent startTimeDate first. Calling next() on the iterator returned will evict each previous Activity. Must have a current session.


equalsByValue

public boolean equalsByValue(Object obj)
Overrides:
equalsByValue in class ResourceWithUsageByMetric


Copyright © 2001-2007 University of Southampton IT Innovation Centre. All Rights Reserved.