Package org.geoforge.wrpbasprsdatecl

Source Code of org.geoforge.wrpbasprsdatecl.GfrWrpBasDatObjNameTloEclSct

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package org.geoforge.wrpbasprsdatecl;

import gov.nasa.worldwind.geom.Position;
import java.awt.geom.Point2D;
import java.util.ArrayList;
import java.util.List;
import org.geoforge.basprjdat.io.GfrIoBasNameDatPrjAbs;
import org.geoforge.basprjdat.table.object.GfrBasTblDatChildAbs;
import org.geoforge.basprjdat.table.object.GfrBasTblDatChildNameAbs;
import org.geoforge.basprjdat.table.object.GfrBasTblDatObjAbs;
import org.geoforge.basprjdat.table.object.GfrBasTblDatTloAbs;
import org.geoforge.basprjdatecl.io.GfrIoBasNameDatPrjEcl;
import org.geoforge.basprjdatecl.table.objects.GfrBasTblDatChildNameImgAbs;
import org.geoforge.basprjdatecl.table.objects.GfrBasTblDatChildNameImgSct;
import org.geoforge.basprjdatecl.table.objects.GfrBasTblDatTloEclSct;
import org.geoforge.lang.util.arraylist.GfrAltPointDouble;
import org.geoforge.sql.field.GfrFldAbs;
import org.geoforge.wrpbasprsdat.util.UtilDeleteChildren;
import org.geoforge.wrpbasusr.GfrWrpUsrSpcDspPrtAppWork;
import org.geoforge.wrpsql.*;

/**
*
* @author bantchao@gmail.com
*/
abstract public class GfrWrpBasDatObjNameTloEclSct extends GfrWrpBasDatObjNameTloEclAbs
{
   public void setGeometry(String strId, ArrayList<Point2D.Double> altp2ds) throws Exception
   {
      GfrBasTblDatObjAbs tblTypeOfData = GfrBasTblDatTloEclSct.s_getInstance();
      String strGeometry = GfrAltPointDouble.s_toString(altp2ds);

      GfrWrpSqlUpdateRecordingsKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
               tblTypeOfData,
              GfrBasTblDatTloEclSct.FLD_VAR_CHAR_GEOMETRY,
              strGeometry,
              GfrBasTblDatObjAbs.FLD_VAR_CHAR_ID_OBJ,
              strId);
   }
  
   @Override
   public String[] getSortedNamesImage(String strIdThis) throws Exception
   {
      String[] strs = GfrWrpSqlGetRecordingsKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_NAME,
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ_OWNER,
              strIdThis);

      if (strs != null && strs.length > 1)
         java.util.Arrays.sort(strs, String.CASE_INSENSITIVE_ORDER);

      return strs;
   }

   @Override
   public String[] getPathsAbsoluteImageFileSortedByName(String strIdThis) throws Exception
   {
      //Trick : Ids end with .jpg
      String strPathAbsoluteImageFolder = getPathAbsoluteImageFolder();

      String[] strsIdsSorted = GfrWrpSqlGetRecordingsKeyValueTargetOrderBy.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ,
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ_OWNER,
              strIdThis,
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_NAME,
              false);

      if (strsIdsSorted == null || strsIdsSorted.length < 1)
         return null;

      String[] strsPaths = new String[strsIdsSorted.length];

      for (int i = 0; i < strsPaths.length; i++)
      {
         strsPaths[i] = strPathAbsoluteImageFolder + java.io.File.separator + strsIdsSorted[i];
      }

      return strsPaths;
   }

   @Override
   public String getIdImage(String strIdTlo, String strNameImage) throws Exception
   {
      GfrFldAbs[] flds =
      {
         GfrBasTblDatChildNameAbs.FLD_VAR_CHAR_NAME,
         GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ_OWNER
      };


      String[] strs =
      {
         strNameImage,
         strIdTlo
      };

      return GfrWrpSqlGetRecordingKeysValuesTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ,
              flds,
              strs);
   }
  
    @Override
   public String getTypeExtensionImage(String strIdObj) throws Exception
   {
       return GfrWrpSqlGetRecordingKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatChildNameImgAbs.FLD_VAR_CHAR_EXTENSION_FILE,
              GfrBasTblDatChildNameAbs.FLD_VAR_CHAR_ID_OBJ,
              strIdObj);
   }

   @Override
   public String getNameImage(String strIdObj) throws Exception
   {
      return GfrWrpSqlGetRecordingKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_NAME,
              GfrBasTblDatChildNameAbs.FLD_VAR_CHAR_ID_OBJ,
              strIdObj);
   }

   @Override
   public String[] getIdsImage(String strIdObj) throws Exception
   {
      return GfrWrpSqlGetRecordingsKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatObjAbs.FLD_VAR_CHAR_ID_OBJ,
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ_OWNER,
              strIdObj);
   }
  
   @Override
   public String cloneImage(
         String strIdTloOwner,
         String strIdLloSource) throws Exception
   {     
       return super._cloneImage(
            strIdTloOwner,
            strIdLloSource,
            "sct",
            GfrBasTblDatChildNameImgSct.s_getInstance());
   }
  
   @Override
   public String saveImage(
         String strObjIdOwner,
         String strNameChild,
         String strPathAbsSource) throws Exception
   {
       return super._saveImage(
            strObjIdOwner,
            strNameChild,
            strPathAbsSource,
            "sct",
            GfrBasTblDatChildNameImgSct.s_getInstance());
   }
  

  

   @Override
   public void deleteImage(String strId) throws Exception
   {
      super.deleteImage(strId);

      super._deleteObject(
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              strId);
   }

   @Override
   public void deleteAllImages(String strIdThis) throws Exception
   {
      super.deleteAllImages(strIdThis);

      String[] strsIdLloVar =
              GfrWrpSqlGetRecordingsKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              GfrBasTblDatObjAbs.FLD_VAR_CHAR_ID_OBJ,
              GfrBasTblDatChildAbs.FLD_VAR_CHAR_ID_OBJ_OWNER,
              strIdThis);

      UtilDeleteChildren.s_doJob(
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatChildNameImgSct.s_getInstance(),
              strsIdLloVar);
   }

   @Override
   public void renameImage(String strId, String strNameNew) throws Exception
   {
      GfrBasTblDatObjAbs tblTypeOfData = GfrBasTblDatChildNameImgSct.s_getInstance();

      GfrWrpSqlUpdateRecordingsKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              tblTypeOfData,
              GfrBasTblDatTloAbs.FLD_VAR_CHAR_NAME,
              strNameNew,
              GfrBasTblDatObjAbs.FLD_VAR_CHAR_ID_OBJ,
              strId);
   }

   @Override
   public String getPathAbsoluteDataFolder() throws Exception
   {
      return GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteLastChildFromHistory()
              + java.io.File.separator + GfrIoBasNameDatPrjAbs.STR_NAME_FOLDER_DATA
              + java.io.File.separator + GfrIoBasNameDatPrjEcl.STR_NAME_FOLDER_SECTOR;
   }

   @Override
   public void rename(String strId, String strNameNew) throws Exception
   {
      GfrBasTblDatObjAbs tblTypeOfData = GfrBasTblDatTloEclSct.s_getInstance();

      GfrWrpSqlUpdateRecordingsKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              tblTypeOfData,
              GfrBasTblDatTloAbs.FLD_VAR_CHAR_NAME,
              strNameNew,
              GfrBasTblDatObjAbs.FLD_VAR_CHAR_ID_OBJ,
              strId);
   }

   public  ArrayList<Point2D.Double> getGeometryAsArrayList(String strIdObject) throws Exception
   {
      return GfrAltPointDouble.s_parse(
              GfrWrpSqlGetRecordingKeyValueTarget.s_getInstance().doJob(
              "",
              "",
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatTloEclSct.s_getInstance(),
              GfrBasTblDatTloEclSct.FLD_VAR_CHAR_GEOMETRY,
              GfrBasTblDatObjAbs.FLD_VAR_CHAR_ID_OBJ,
              strIdObject));

   }

   /*
    * Memo:
    * Position posMin = lstPosition.get(0);
      Position posMax = lstPosition.get(1);
    */
   public List<Position> getGeometry(String strIdObject) throws Exception
   {
      ArrayList<Point2D.Double> altPnt = getGeometryAsArrayList(strIdObject);
     

      List<Position> lstPosition = new ArrayList<Position>();

      if (altPnt == null || altPnt.size() < 1)
         return lstPosition;

      for (int i = 0; i < altPnt.size(); i++)
      {
         Point2D.Double dbl2dCur = altPnt.get(i);
         double dblX = dbl2dCur.getX();
         double dblY = dbl2dCur.getY();
         //Memo Reading Lon Lat, but LatLon necessary for Position
         lstPosition.add(Position.fromDegrees(dblY, dblX));
      }

      return lstPosition;
   }

   @Override
   public String getUrlTlo(String strObjId) throws Exception
   {
      return super._getUrl(
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatTloEclSct.s_getInstance(),
              strObjId);
   }

   @Override
   public String getName(String strObjId) throws Exception
   {
      return super._getName(
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatTloEclSct.s_getInstance(),
              strObjId);
   }

   @Override
   public String getId(String strName) throws Exception
   {
      return super._getId(
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatTloEclSct.s_getInstance(),
              strName);
   }

   @Override
   public String getDescription(String strObjId) throws Exception
   {
      return super._getDescription(
              GfrWrpUsrSpcDspPrtAppWork.getInstance().getPathAbsoluteDbDataChild(GfrIoBasNameDatPrjEcl.STR_FILE),
              GfrBasTblDatTloEclSct.s_getInstance(),
              strObjId);
   }

   // ---
   protected GfrWrpBasDatObjNameTloEclSct()
   {
      super();
   }

}
TOP

Related Classes of org.geoforge.wrpbasprsdatecl.GfrWrpBasDatObjNameTloEclSct

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.