First commit
This commit is contained in:
		@@ -0,0 +1,101 @@
 | 
			
		||||
OfferStatistic = {}
 | 
			
		||||
OfferStatistic.__index = OfferStatistic
 | 
			
		||||
 | 
			
		||||
SECONDS_PER_DAY = 86400
 | 
			
		||||
 | 
			
		||||
OfferStatistic.new = function(timestamp, t, transactions, totalPrice, highestPrice, lowestPrice)
 | 
			
		||||
  local stat = {
 | 
			
		||||
    time = 0,
 | 
			
		||||
    type = nil,
 | 
			
		||||
    transactions = 0,
 | 
			
		||||
    totalPrice = 0,
 | 
			
		||||
    highestPrice = 0,
 | 
			
		||||
    lowestPrice = 0
 | 
			
		||||
  }
 | 
			
		||||
  stat.time = math.floor(timestamp / SECONDS_PER_DAY) * SECONDS_PER_DAY
 | 
			
		||||
 | 
			
		||||
  if t ~= MarketAction.Buy and t ~= MarketAction.Sell then
 | 
			
		||||
    g_logger.error('OfferStatistic.new - invalid type provided.')
 | 
			
		||||
  end
 | 
			
		||||
  stat.type = t
 | 
			
		||||
 | 
			
		||||
  stat.transactions = transactions
 | 
			
		||||
  stat.totalPrice = totalPrice
 | 
			
		||||
  stat.highestPrice = highestPrice
 | 
			
		||||
  stat.lowestPrice = lowestPrice
 | 
			
		||||
 | 
			
		||||
  setmetatable(stat, OfferStatistic)
 | 
			
		||||
  return stat
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:isNull()
 | 
			
		||||
  return self.time == 0 or not self.type
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
-- Sets/Gets
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:setTime(time)
 | 
			
		||||
  if not time or type(time) ~= 'number'  then
 | 
			
		||||
    g_logger.error('OfferStatistic.setTime - invalid time provided.')
 | 
			
		||||
  end
 | 
			
		||||
  self.time = time
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:getTime()
 | 
			
		||||
  return self.time
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:setType(t)
 | 
			
		||||
  if not t or type(t) ~= 'number'  then
 | 
			
		||||
    g_logger.error('OfferStatistic.setType - invalid type provided.')
 | 
			
		||||
  end
 | 
			
		||||
  self.type = t
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:getType()
 | 
			
		||||
  return self.type
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:setTransactions(transactions)
 | 
			
		||||
  if not transactions or type(transactions) ~= 'number'  then
 | 
			
		||||
    g_logger.error('OfferStatistic.setTransactions - invalid transactions provided.')
 | 
			
		||||
  end
 | 
			
		||||
  self.transactions = transactions
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:getTransactions()
 | 
			
		||||
  return self.transactions
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:setTotalPrice(amount)
 | 
			
		||||
  if not totalPrice or type(totalPrice) ~= 'number'  then
 | 
			
		||||
    g_logger.error('OfferStatistic.setTotalPrice - invalid total price provided.')
 | 
			
		||||
  end
 | 
			
		||||
  self.totalPrice = totalPrice
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:getTotalPrice()
 | 
			
		||||
  return self.totalPrice
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:setHighestPrice(highestPrice)
 | 
			
		||||
  if not highestPrice or type(highestPrice) ~= 'number'  then
 | 
			
		||||
    g_logger.error('OfferStatistic.setHighestPrice - invalid highestPrice provided.')
 | 
			
		||||
  end
 | 
			
		||||
  self.highestPrice = highestPrice
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:getHighestPrice()
 | 
			
		||||
  return self.highestPrice
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:setLowestPrice(lowestPrice)
 | 
			
		||||
  if not lowestPrice or type(lowestPrice) ~= 'number'  then
 | 
			
		||||
    g_logger.error('OfferStatistic.setLowestPrice - invalid lowestPrice provided.')
 | 
			
		||||
  end
 | 
			
		||||
  self.lowestPrice = lowestPrice
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function OfferStatistic:getLowestPrice()
 | 
			
		||||
  return self.lowestPrice
 | 
			
		||||
end
 | 
			
		||||
		Reference in New Issue
	
	Block a user