Preparing for tracking the object creation etc.
[jpf-core.git] / src / peers / gov / nasa / jpf / vm / JPF_java_text_DateFormatSymbols.java
1 /*
2  * Copyright (C) 2014, United States Government, as represented by the
3  * Administrator of the National Aeronautics and Space Administration.
4  * All rights reserved.
5  *
6  * The Java Pathfinder core (jpf-core) platform is licensed under the
7  * Apache License, Version 2.0 (the "License"); you may not use this file except
8  * in compliance with the License. You may obtain a copy of the License at
9  * 
10  *        http://www.apache.org/licenses/LICENSE-2.0. 
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and 
16  * limitations under the License.
17  */
18
19 package gov.nasa.jpf.vm;
20
21 import gov.nasa.jpf.annotation.MJI;
22 import gov.nasa.jpf.vm.MJIEnv;
23 import gov.nasa.jpf.vm.NativePeer;
24
25 import java.text.DateFormatSymbols;
26
27 public class JPF_java_text_DateFormatSymbols extends NativePeer {
28   @MJI
29   public void initializeData__Ljava_util_Locale_2__V (MJIEnv env, int objRef, int localeRef) {
30     DateFormatSymbols dfs = new DateFormatSymbols();
31     
32     String[] eras = dfs.getEras();
33     env.setReferenceField(objRef, "eras", env.newStringArray(eras));
34     
35     String[] months = dfs.getMonths();
36     env.setReferenceField(objRef, "months", env.newStringArray(months));
37     
38     String[] shortMonths = dfs.getShortMonths();
39     env.setReferenceField(objRef, "shortMonths", env.newStringArray(shortMonths));
40     
41     String[] weekdays = dfs.getWeekdays();
42     env.setReferenceField(objRef, "weekdays", env.newStringArray(weekdays));
43     
44     String[] shortWeekdays = dfs.getShortWeekdays();
45     env.setReferenceField(objRef, "shortWeekdays", env.newStringArray(shortWeekdays));
46     
47     String[] ampms = dfs.getAmPmStrings();
48     env.setReferenceField(objRef, "ampms", env.newStringArray(ampms));
49     
50     String[][] zoneStrings = dfs.getZoneStrings();
51     int aaref = env.newObjectArray("[Ljava.lang.String;", zoneStrings.length);
52     env.setReferenceField(objRef, "zoneStrings", aaref);
53     for (int i=0; i<zoneStrings.length; i++){
54       env.setReferenceArrayElement(aaref, i, env.newStringArray(zoneStrings[i]));
55     }
56     
57     String localPatternChars = dfs.getLocalPatternChars();
58     env.setReferenceField(objRef, "localPatternChars", env.newString(localPatternChars));
59
60   }
61 }