You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
545 B
25 lines
545 B
package hal
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
type PageErrorLogger struct {
|
|
file *os.File
|
|
}
|
|
|
|
func NewPageErrorLogger(path string) (logger *PageErrorLogger, err error) {
|
|
logger = new(PageErrorLogger)
|
|
os.Remove(path)
|
|
logger.file, err = os.Create(path)
|
|
return
|
|
}
|
|
|
|
func (logger *PageErrorLogger) handlePageError(address Address, write bool) {
|
|
fmt.Fprintf(logger.file, "[page = %d offset = %d addr = %d write=%t]\n", address.PageNumber(), address.Offset(), address, write)
|
|
}
|
|
|
|
func (logger *PageErrorLogger) Close() error {
|
|
return logger.file.Close()
|
|
}
|
|
|