Package de.iritgo.aktera.model

Examples of de.iritgo.aktera.model.Output


  /**
   * @see de.iritgo.aktera.dashboard.GroupVisitor#generate(de.iritgo.aktera.dashboard.items.SimpleTextItem)
   */
  public void generate(SimpleTextItem simpleTextItem)
  {
    Output item = response.createOutput(simpleTextItem.getId());

    item.setAttribute("label", simpleTextItem.getLabel());
    item.setAttribute("text", simpleTextItem.getText());
    item.setAttribute("measuringUnit", simpleTextItem.getMeasuringUnit());
    item.setAttribute("renderInclude", simpleTextItem.getRenderFile());
    currentGroupItems.add(item);
  }
View Full Code Here


    }
    catch (ContextException x)
    {
    }

    Output outMenuList = res.createOutput("menuList");

    res.add(outMenuList);

    Configuration[] menus = config.getChildren("menu");

    for (int i = 0; i < menus.length; ++i)
    {
      Configuration menuConfig = menus[i];

      try
      {
        if (menuConfig.getAttribute("ifModule", null) != null
                && ! ModuleTools.moduleExists(req, menuConfig.getAttribute("ifModule")))
        {
          continue;
        }
      }
      catch (ConfigurationException x)
      {
      }

      String menuId = "menu_" + menuConfig.getAttribute("id", "");

      Output outMenu = null;

      for (Iterator j = outMenuList.getAll().iterator(); j.hasNext();)
      {
        Output aMenu = (Output) j.next();

        if (aMenu.getName().equals(menuId))
        {
          outMenu = aMenu;

          break;
        }
View Full Code Here

  }

  public static void update(ModelRequest request, ModelResponse response, Logger logger)
    throws ModelException, ServiceException
  {
    Output outModuleList = response.createOutput("modules");

    response.add(outModuleList);

    PersistentFactory pf = (PersistentFactory) request.getService(PersistentFactory.ROLE, request.getDomain());

    DataSourceComponent dataSourceComponent = (DataSourceComponent) request.getService(DataSourceComponent.ROLE,
            "keel-dbpool");

    updatePreProcessing(request, dataSourceComponent);

    boolean needReboot = false;
    boolean newUserPreferences = false;

    List<Configuration> moduleConfigs = de.iritgo.aktera.base.module.ModuleInfo
            .moduleConfigsSortedByDependency(request);

    for (Configuration moduleConfig : moduleConfigs)
    {
      String moduleId = moduleConfig.getAttribute("id", "unkown");
      String moduleName = moduleConfig.getChild("name").getValue("unkown");
      ModuleVersion newVersion = new ModuleVersion(moduleConfig.getChild("version").getValue(null));

      Output outModule = response.createOutput("module_" + moduleConfig.getAttribute("id", "unknown"));

      outModuleList.add(outModule);
      outModule.setAttribute("name", moduleName);
      outModule.setAttribute("description", moduleConfig.getChild("description").getValue(""));
      outModule.setAttribute("newVersion", newVersion.toString());

      ModuleVersion currentVersion = new ModuleVersion();

      try
      {
        Persistent version = pf.create("aktera.Version");

        version.setField("type", "M");
        version.setField("name", moduleId);

        if (version.find())
        {
          currentVersion = new ModuleVersion(version.getFieldString("version"));
        }
        else
        {
          currentVersion = new ModuleVersion("0.0.0");
        }
      }
      catch (Exception x)
      {
        outModule.setAttribute("oldVersion", currentVersion.toString());
        outModule.setAttribute("error", "unableToRetrieveCurrentVersion");
        outModule.setAttribute("errorException", x.toString());

        response.addOutput("updateError", "Y");

        continue;
      }

      outModule.setAttribute("oldVersion", currentVersion.toString());

      String updateHandlerClassName = moduleConfig.getChild("update").getAttribute("class", null);

      if (updateHandlerClassName != null)
      {
        try
        {
          System.out.println("UpdateDatabase: Updating module '" + moduleId + "' with handler '"
                  + updateHandlerClassName + "'");

          Class klass = Class.forName(updateHandlerClassName);

          if (klass != null)
          {
            UpdateHandler updateHandler = (UpdateHandler) klass.newInstance();

            Connection con = null;

            try
            {
              con = dataSourceComponent.getConnection();
              updateHandler.setConnection(con);
              updateHandler.updateDatabase(request, logger, con, pf, (ModuleVersion) currentVersion
                      .clone(), newVersion);
            }
            finally
            {
              con.close();
            }

            needReboot = needReboot || updateHandler.needReboot();
            newUserPreferences = newUserPreferences || updateHandler.hasNewUserPreferences();
          }
          else
          {
            System.out.println("UpdateDatabase: Unable to find update handler for module '" + moduleId
                    + "'");
          }
        }
        catch (ClassNotFoundException x)
        {
          System.out
                  .println("UpdateDatabase: Unable call update handler for module '" + moduleId
                          + "': " + x);
        }
        catch (Exception x)
        {
          outModule.setAttribute("error", "errorDuringUpdate");
          outModule.setAttribute("errorException", x.toString());

          response.addOutput("updateError", "Y");

          continue;
        }
      }

      try
      {
        Persistent version = pf.create("aktera.Version");

        version.setField("type", "M");
        version.setField("name", moduleId);

        if (version.find())
        {
          version.setField("version", newVersion.toString());
          version.update();
        }
        else
        {
          version.setField("version", newVersion.toString());
          version.add();
        }
      }
      catch (Exception x)
      {
        outModule.setAttribute("error", "unableToUpdateVersion");
        outModule.setAttribute("errorException", x.toString());
        response.addOutput("updateError", "Y");
      }
    }

    if (newUserPreferences)
View Full Code Here

  {
    ModelResponse res = req.createResponse();

    LicenseInfo license = LicenseTools.getLicenseInfo();

    Output licenseComplanyName = res.createOutput("licenseCompanyName");

    if (license != null)
    {
      licenseComplanyName.setContent(license.getCompany());
    }
    else
    {
      licenseComplanyName.setContent("");
    }

    res.add(licenseComplanyName);

    return res;
View Full Code Here

  {
    ModelResponse res = req.createResponse();

    try
    {
      Output out = res.createOutput("data");

      Configuration fileConfig = getConfiguration().getChild("file", false);

      if (fileConfig != null)
      {
        BinaryWrapper data = new BinaryWrapper(fileConfig.getAttribute("name"),
                fileConfig.getAttribute("type"), fileConfig.getAttribute("path"), 1024 * 1024, null);

        out.setContent(data);
      }

      res.add(out);
    }
    catch (ConfigurationException x)
View Full Code Here

        props[propCount++] = labelProp;
      }

      if (re instanceof Output)
      {
        Output o = (Output) re;
        Object content = o.getContent();
        DynaProperty contentProp = null;

        if (content != null)
        {
          contentProp = new DynaProperty("content", content.getClass());
View Full Code Here

  public String toString()
  {
    if (myElement instanceof Output)
    {
      Output o = (Output) myElement;

      if (o.getContent() != null)
      {
        return o.getContent().toString();
      }
      else
      {
        return "";
      }
View Full Code Here

      if (re instanceof Output)
      {
        set("type", "output");

        Output o = (Output) re;
        Object content = o.getContent();

        set("content", content);
      }

      if (re instanceof Command)
View Full Code Here

    page = Math.min(page, maxPage);

    context.setPage(page);
    context.setFirstResult((page - 1) * context.getResultsPerPage());

    Output outList = createHeaderElements(request, response, listing, context);

    outList.setAttribute("pageCount", new Integer(maxPage));
    outList.setAttribute("page", String.valueOf(page));

    int firstResult = (page - 1) * context.getResultsPerPage();
    int maxResults = context.getResultsPerPage();
    java.util.List res = null;

    if (query.getDaoName() != null)
    {
      try
      {
        res = (java.util.List) MethodUtils.invokeExactMethod(SpringTools.getBean(query.getDaoName()), query
                .getDaoMethodName(), queryParams);
      }
      catch (NoSuchMethodException x)
      {
        throw new ModelException(x);
      }
      catch (IllegalAccessException x)
      {
        throw new ModelException(x);
      }
      catch (InvocationTargetException x)
      {
        throw new ModelException(x.getTargetException());
      }
    }
    else if (query.getName() != null)
    {
      res = standardDao.findByNamedQuery(query.getName(), queryParams, firstResult, maxResults, listing
              .getSortColumnName(), listing.getSortOrder());
    }
    else
    {
      res = standardDao.findByQuery(query.getQuery(), queryParams, firstResult, maxResults, listing
              .getSortColumnName(), listing.getSortOrder());
    }

    int rowNum = 1;

    for (Object row : res)
    {
      context.setIt(row);

      Output outItem = response.createOutput("item");

      outList.add(outItem);

      String idExpression = listing.getIdColumn();

      if (idExpression == null)
      {
        idExpression = "#{it.id}";
      }

      String id = ExpressionLanguageContext.evalExpressionLanguageValue(context, request, idExpression)
              .toString();

      try
      {
        outItem.setAttribute("id", id);
      }
      catch (Exception x)
      {
        throw new ModelException("Unable to retrieve id property in listing '" + listing.getId() + "' ("
                + x.getMessage() + ")");
      }

      outItem.setAttribute("odd", new Boolean(rowNum % 2 == 1));
      outItem.setAttribute("even", new Boolean(rowNum % 2 == 0));
      ++rowNum;

      int colNum = 0;

      for (ColumnDescriptor column : listing.getColumns())
      {
        Output outColumn = response.createOutput(String.valueOf(colNum++));
        outItem.add(outColumn);

        if ("custom".equals(column.getViewer()))
        {
          outColumn.setAttribute("viewer", "text");
          if (handler != null)
          {
            try
            {
              CellData cellData = handler.handleResult(request, response, listing, new BeanRowData(
                      listing, row), column);
              outColumn.setContent(cellData.getValue());
              outColumn.setAttribute("viewer", cellData.getViewer().toString());
              outColumn.setAttribute("bundle", cellData.getBundle());
            }
            catch (Exception x)
            {
              outColumn.setAttribute("viewer", "error");
              outColumn.setContent(x.getMessage());
            }
          }
          else
          {
            outColumn.setContent("");
          }
        }
        else
        {
          String valueExpression = column.getValue();
          if (valueExpression == null)
          {
            valueExpression = "#{it." + column.getName() + "}";
          }
          Object value = ExpressionLanguageContext.evalExpressionLanguageValue(context, request,
                  valueExpression);

          if ("combo".equals(column.getViewer()))
          {
            outColumn.setAttribute("viewer", column.getViewer());
            outColumn.setAttribute("bundle", column.getBundle());
            outColumn.setContent(! StringTools.isTrimEmpty(value) ? "opt" + value : "-");
          }
          else if ("message".equals(column.getViewer()))
          {
            outColumn.setAttribute("viewer", column.getViewer());
            outColumn.setAttribute("bundle", column.getBundle());

            String[] parts = value.toString().split("\\|");
            StringBuffer sb = new StringBuffer(parts[0]);

            for (int j = 1; j < parts.length; ++j)
            {
              if (parts[j].startsWith("#{") && parts[j].endsWith("}"))
              {
                sb.append("|"
                        + ExpressionLanguageContext.evalExpressionLanguageValue(context,
                                request, parts[j]));
              }
              else
              {
                sb.append("|" + parts[j]);
              }
            }

            outColumn.setContent(sb.toString());
          }
          else if (column.getViewer().startsWith("icon:"))
          {
            String viewer = column.getViewer();
            int slashPos = viewer.indexOf('|');
            String iconTrue = viewer.substring(5, slashPos > 0 ? slashPos : viewer.length());
            String iconFalse = slashPos > 0 ? viewer.substring(slashPos + 1, viewer.length()) : "blank";
            outColumn.setAttribute("viewer", "icon");
            outColumn.setContent(NumberTools.toBool(value, false) ? iconTrue : iconFalse);
          }
          else if (column.getViewer().startsWith("handler:"))
          {
            try
            {
              CellData cellData = (CellData) MethodUtils.invokeMethod(handler, column.getViewer()
                      .substring(8), value);
              outColumn.setContent(cellData.getValue());
              outColumn.setAttribute("viewer", cellData.getViewer() != null ? cellData.getViewer()
                      .toString() : "text");
              outColumn.setAttribute("bundle", cellData.getBundle() != null ? cellData.getBundle()
                      : listing.getBundle());
            }
            catch (InvocationTargetException x)
            {
              outColumn.setContent(x.getTargetException().toString());
            }
            catch (Exception x)
            {
              outColumn.setContent(x.toString());
            }
          }
          else if (column.getViewer().startsWith("js:"))
          {
            String[] params = column.getViewer().split(":");

            outColumn.setAttribute("viewer", "js");
            outColumn.setContent(params[1]);
            outColumn.setAttribute("name", column.getName());
            outColumn.setAttribute("id", id);
          }
          else if ("province".equals(column.getViewer()))
          {
            //          outColumn.setAttribute ("viewer", column.getViewer ());
            //          Object country = null;
            //          try
            //          {
            //            country = set.getObject (column.getAs () + "country");
            //          }
            //          catch (Exception ignored)
            //          {
            //          }
            //          Object value = set.getObject (column.getAs ());
            //          if (! StringTools.isTrimEmpty (value))
            //          {
            //            outColumn.setContent ((! StringTools.isTrimEmpty (country) ? country + "." : "") +
            //                    StringTools.trim (value));
            //          }
            //          else
            //          {
            //            outColumn.setContent ("");
            //          }
            outColumn.setContent("");
          }
          else
          {
            outColumn.setAttribute("viewer", column.getViewer());
            outColumn.setContent(! StringTools.isTrimEmpty(value) ? value : "");
          }
        }

        if (! column.isVisible())
        {
          outColumn.setAttribute("hide", "Y");
        }
      }

      CommandInfo viewCommand = listing.getCommand(ListingDescriptor.COMMAND_VIEW);

      if (viewCommand != null)
      {
        Command cmd = viewCommand.createCommand(request, response, context);

        cmd.setName("command");
        cmd.setParameter(listing.getKeyName(), id);
        cmd.setParameter("link", "Y");
        outItem.setAttribute("command", cmd);
      }
    }

    while (rowNum <= context.getResultsPerPage())
    {
      Output outItem = response.createOutput("item");

      outList.add(outItem);
      outItem.setAttribute("empty", Boolean.TRUE);
      ++rowNum;
    }

    createListingControls(request, response, listing, outList, 1, maxPage, page, context);
  }
View Full Code Here

  {
    ModelResponse res = req.createResponse();

    AppInfo.Info appInfo = AppInfo.getAppInfo(AppInfo.SYSTEM);

    Output outName = res.createOutput("name", appInfo.getNameLong());

    res.add(outName);

    Output outVersion = res.createOutput("version", appInfo.getVersionLong());

    res.add(outVersion);

    Output outCopyright = res.createOutput("copyright", appInfo.getCopyright().replaceAll("\\\\n", "<br>"));

    res.add(outCopyright);

    return res;
  }
View Full Code Here

TOP

Related Classes of de.iritgo.aktera.model.Output

Copyright © 2018 www.massapicom. 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.