Facebook
From TwĂłj Stary, 3 Years ago, written in Plain Text.
This paste is a reply to from - view diff
Embed
Download Paste or View Raw
Hits: 1558
  1. import java.util.Date;
  2.  
  3.  
  4.  
  5. public aspect aspekt {
  6.        
  7.         declare parents: service.* implements LastTimes;
  8.  
  9.         private Date LastTimes.lastCallTime= new Date();
  10.         private Date LastTimes.lastReturnTime = new Date();
  11.        
  12.         public Date LastTimes.getLastCallTime()
  13.         {
  14.                 return lastCallTime;
  15.         }
  16.        
  17.         public Date LastTimes.lastReturnTime()
  18.         {
  19.                 return lastReturnTime;
  20.         }
  21.        
  22. //        public void LastTimes.ustawCall(Date data){
  23. //             
  24. //        }
  25. //        public void LastTimes.ustawReturn(Date data){
  26. //             
  27. //        }
  28.  
  29.         before(LastTimes czasy)
  30.          : call(* LastTimes+.*(..))
  31.          && !call(* LastTimes.*(..))
  32.          && this(czasy)
  33.          {
  34.                 czasy.lastCallTime= new Date();
  35.             // czasy.ustawCall(new Date());  
  36.         }
  37.        
  38.         after(LastTimes czasy2)
  39.         : call(* LastTimes+.*(..))
  40.         && !call(* LastTimes.*(..))
  41.         && this(czasy2)
  42.         {
  43.                 czasy2.lastReturnTime = new Date();
  44.             //czasy2.ustawReturn(new Date());  
  45.        }
  46.  
  47.        
  48.         interface LastTimes {
  49.                
  50.                 void ustawCall(Date data);
  51.                 void ustawReturn(Date data);
  52.                
  53.  
  54.         }
  55. }