Package com.gammastream.validity

Source Code of com.gammastream.validity.GSVEOModel

package com.gammastream.validity;

import java.io.File;
import java.io.FileInputStream;

import com.webobjects.foundation.NSArray;
import com.webobjects.foundation.NSDictionary;
import com.webobjects.foundation.NSMutableArray;
import com.webobjects.foundation.NSPathUtilities;
import com.webobjects.foundation.NSPropertyListSerialization;

public class GSVEOModel {

    private NSDictionary model = null;
    private String path = null;
    private String name = null;
    private String eomodelVersion = null;
    private String adaptorName = null;
    private NSDictionary connectionDictionary = null;
    private NSArray entities = null;
    private NSArray gsveoEntities = null;
  
    public GSVEOModel(NSDictionary d, String p){
        model = d;
        path = p;
    }

    public GSVEOModel(String p) throws java.io.IOException{
            path=p;
            File f = new File(path+"/index.eomodeld");
            FileInputStream fis = new FileInputStream(f);
            byte[] bytes = new byte[(int)f.length()];
            fis.read(bytes);
            model = (NSDictionary)NSPropertyListSerialization.propertyListFromString(new String(bytes));
     }

   
    public String path(){
        return path;
    }
   
    public String name(){
        if(name != null)
            return name;
        name = NSPathUtilities.stringByDeletingPathExtension(NSPathUtilities.lastPathComponent(path));
        return name;
    }
   
    public String eomodelVersion(){
        if(eomodelVersion != null)
            return eomodelVersion;
        eomodelVersion = (String)model.objectForKey("EOModelVersion");
        return name;
    }
   
    public String adaptorName(){
        if(adaptorName != null)
            return adaptorName;
        adaptorName = (String)model.objectForKey("adaptorName");
        return name;
    }
   
    public NSDictionary connectionDictionary(){
        if(connectionDictionary != null)
            return connectionDictionary;
        connectionDictionary = (NSDictionary)model.objectForKey("connectionDictionary");
        return connectionDictionary;
    }
   
    public NSArray entities(){
        if(entities != null)
            return entities;
        entities = (NSArray)model.objectForKey("entities");
        return entities;
    }

    public NSArray gsveoEntities(){
        if(gsveoEntities != null)
            return gsveoEntities;
         NSMutableArray temp = new NSMutableArray();
         for(int i=0;i<entities().count();i++)
             temp.addObject(new GSVEOEntity(this, (String)((NSDictionary)(entities().objectAtIndex(i))).objectForKey("name")));
         gsveoEntities = temp;
         return gsveoEntities;
     }

   
    public GSVEOEntity entityNamed(String name){
        NSDictionary currentEntity = null;
        for(int i=0;i<this.entities().count();i++){
            currentEntity = (NSDictionary)this.entities().objectAtIndex(i);
            if(currentEntity.objectForKey("name").equals(name))
               return new GSVEOEntity(this,name);
        }
        return null;
    }
   
}
TOP

Related Classes of com.gammastream.validity.GSVEOModel

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.