Implements file roll.
 If the maximum number of size based backups is reached (curSizeRollBackups == maxSizeRollBackups) then the oldest file is deleted -- its index determined by the sign of countDirection. If countDirection < 0, then files {File.1, ..., File.curSizeRollBackups -1} are renamed to {File.2, ..., File.curSizeRollBackups}. 
 If maxSizeRollBackups is equal to zero, then the File is truncated with no backup files created. 
 If maxSizeRollBackups < 0, then File is renamed if needed and no files are deleted. 
This is called by RollOverSize to rename the files.
RollingFileAppender Class | log4net.Appender Namespace