i
[chise/ruby.git] / chise / management.rb
1 # Copyright (C) 2002-2004 Kouichirou Eto, All rights reserved.
2
3 module CHISE
4   class DBS_Management # DataBase file management
5     OBSOLETE_ATTRIBUTES = "
6 cns-radical
7 cns-radical?
8 kangxi-radical
9 daikanwa-radical
10 unicode-radical
11
12 cns-strokes
13 kangxi-strokes
14 daikanwa-strokes
15 shinjigen-1-radical
16 gb-original-radical
17 japanese-strokes
18 jis-strokes-a
19 jis-strokes-b
20 jisx0208-strokes
21 jis-x0213-strokes
22 jisx0213-strokes
23 unicode-strokes
24
25 totalstrokes
26 cns-total-strokes
27 jis-total-strokes-b
28
29 non-morohashi
30
31 =>ucs*
32 #=>mojikyo
33 #=mojikyo
34 ->identical
35
36 ancient-ideograph-of
37 ancient-char-of-shinjigen-1
38 original-ideograph-of
39 original-char-of-shinjigen-1
40 simplified-ideograph-of
41 vulgar-ideograph-of
42 vulgar-char-of-shinjigen-1
43 ideograph=
44 ideographic-variants
45 variant-of-shinjigen-1
46
47 iso-10646-comment
48 ".split
49
50     def initialize
51       dir = Config.instance.db_dir
52       @odir = dir+"/system-char-id/obsolete" #\92¼\91Å\82¿\82µ\82Ä\82¢\82é\81B
53     end
54
55     def move_obsolete_files # move obsolete BDB files
56       db = CharDB.instance
57       db.close_all
58       Dir.mkdir(@odir) unless FileTest.directory? @odir
59       OBSOLETE_ATTRIBUTES.each {|attr|
60         next if attr =~ /^#/
61         filename = db.get_filename(attr)
62         move_to_obsolete(filename)
63         move_to_obsolete(filename+".txt")
64       }
65     end
66
67     def move_to_obsolete(file)
68       cmd = "mv \"#{file}\" #{@odir}"
69       #p cmd
70       system cmd
71     end
72   end
73 end