Example usage for org.apache.wicket.request.mapper.parameter PageParameters getIndexedCount

List of usage examples for org.apache.wicket.request.mapper.parameter PageParameters getIndexedCount

Introduction

In this page you can find the example usage for org.apache.wicket.request.mapper.parameter PageParameters getIndexedCount.

Prototype

public int getIndexedCount() 

Source Link

Usage

From source file:at.molindo.wicketutils.utils.WicketUtils.java

License:Apache License

public static LinkedHashMap<String, Object> toMap(PageParameters params) {
    int indexed = params.getIndexedCount();
    List<NamedPair> named = params.getAllNamed();

    LinkedHashMap<String, Object> map = new LinkedHashMap<String, Object>((indexed + named.size()) * 2);

    for (int i = 0; i < indexed; i++) {
        String index = Integer.toString(i);
        Object value = params.get(i).to(Object.class);

        Object prev = map.put(index, value);
        if (prev != null) {
            map.put(index, merge(prev, value));
        }//from w ww  .  ja v  a2s . c om
    }

    for (NamedPair p : named) {
        map.put(p.getKey(), p.getValue());
    }

    return map;
}

From source file:com.userweave.pages.test.DisplaySurveyUI.java

License:Open Source License

/**
 * Check, if one of the indexed parameters have the value 'mobile'.
 * If so, return true./*from   w  ww . j  a  va  2s .  c o m*/
 *  
 * @param parameters
 *       Page parameters.
 * @return
 *       True, if indexed page parameters contains the keyword 'mobile'.
 */
public static boolean getMobile(PageParameters parameters) {
    for (int i = 0; i < parameters.getIndexedCount(); i++) {
        if (parameters.get(i).equals("mobile")) {
            return true;
        }
    }

    return false;
}

From source file:jp.javelindev.wicket.resource.SimpleTextResource.java

License:Apache License

@Override
protected ResourceResponse newResourceResponse(Attributes attributes) {
    LOGGER.info("newResourceResponse");

    PageParameters params = attributes.getParameters();

    for (int i = 0; i < params.getIndexedCount(); i++) {
        StringValue value = params.get(i);
        LOGGER.info("index " + i + " = " + value.toString());
    }/*ww  w . j a  v a 2  s  .c  o m*/

    for (String name : params.getNamedKeys()) {
        StringValue value = params.get(name);
        LOGGER.info(name + " = " + value.toString());
    }
    return super.newResourceResponse(attributes);
}

From source file:org.brixcms.web.BrixRequestMapper.java

License:Apache License

private Url encode(String nodeURL, PageParameters parameters, PageInfo info) {
    StringBuilder builder = new StringBuilder();

    if (nodeURL.startsWith("/")) {
        nodeURL = nodeURL.substring(1);//from w  ww  .jav a 2  s  .  c  o  m
    }

    builder.append(urlEncodePath(new Path(nodeURL, false)));

    boolean skipFirstSlash = builder.charAt(builder.length() - 1) == '/';

    for (int i = 0; i < parameters.getIndexedCount(); ++i) {
        if (!skipFirstSlash) {
            builder.append('/');
        } else {
            skipFirstSlash = false;
        }

        final StringValue value = parameters.get(i);
        final String s = value.toString();

        if (s != null) {
            builder.append(urlEncode(s));
        }
    }

    Set<String> keys = parameters.getNamedKeys();
    if (info != null || !keys.isEmpty()) {
        builder.append("?");
    }

    if (info != null) {
        builder.append(info.toString());
    }

    boolean first = (info == null);

    for (String key : keys) {
        List<StringValue> values = parameters.getValues(key);
        for (StringValue value : values) {
            if (first) {
                first = false;
            } else {
                builder.append("&");
            }
            builder.append(urlEncode(key));
            builder.append("=");
            builder.append(urlEncode(value.toString()));
        }
    }

    return Url.parse(builder.toString());
}

From source file:org.brixcms.web.nodepage.BrixNodePageUrlMapper.java

License:Apache License

private CharSequence encode(String nodeURL, PageParameters parameters, PageInfo info, String iface) {
    StringBuilder builder = new StringBuilder();

    if (nodeURL.startsWith("/")) {
        nodeURL = nodeURL.substring(1);//from  w  ww .  jav  a2s  .  c  om
    }

    builder.append(urlEncodePath(new Path(nodeURL, false)));

    boolean skipFirstSlash = builder.charAt(builder.length() - 1) == '/';

    for (int i = 0; i < parameters.getIndexedCount(); ++i) {
        if (!skipFirstSlash)
            builder.append('/');
        else
            skipFirstSlash = false;

        final StringValue value = parameters.get(i);
        final String s = value.toString();

        if (s != null)
            builder.append(urlEncode(s));
    }

    Set<String> keys = parameters.getNamedKeys();
    if (info != null || !keys.isEmpty()) {
        builder.append("?");
    }

    if (info != null) {
        builder.append(info.toString());
    }

    boolean first = (info == null);

    for (String key : keys) {
        List<StringValue> values = parameters.getValues(key);
        for (StringValue value : values) {
            if (first) {
                first = false;
            } else {
                builder.append("&");
            }
            builder.append(urlEncode(key));
            builder.append("=");
            builder.append(urlEncode(value.toString()));
        }
    }

    if (iface != null) {
        if (!first) {
            builder.append("&");
        }
        builder.append(getInterfaceParameter());
        builder.append("=");
        builder.append(iface);
    }

    return builder.toString();
}

From source file:org.cast.cwm.ResourceDirectory.java

License:Open Source License

/**
 * creates a new resource response based on the request attributes
 * /*from  ww  w .  j  a  v  a 2  s.c  o  m*/
 * @param attributes
 *            current request attributes from client
 * @return resource response for answering request
 */
@Override
protected ResourceResponse newResourceResponse(Attributes attributes) {
    String relativePath = "";
    PageParameters parameters = attributes.getParameters();
    for (int i = 0; i < parameters.getIndexedCount(); i++) {
        relativePath += parameters.get(i);
        relativePath += '/';
    }
    if (relativePath.endsWith("/"))
        relativePath = relativePath.substring(0, relativePath.length() - 1);
    log.trace("relativePath is {}", relativePath);

    String absolutePath = new File(sourceDirectory, relativePath).getAbsolutePath();

    final ResourceResponse resourceResponse = new ResourceResponse();

    final IResourceStream resourceStream = getResourceStream(absolutePath);

    // bail out if resource stream could not be found
    if (resourceStream == null) {
        return sendResourceError(absolutePath, resourceResponse, HttpServletResponse.SC_NOT_FOUND,
                "Unable to find resource");
    }

    // allow caching
    resourceResponse.setCacheScope(WebResponse.CacheScope.PUBLIC);
    resourceResponse.setCacheDuration(cacheDuration);

    // add Last-Modified header (to support HEAD requests and If-Modified-Since)
    resourceResponse.setLastModified(resourceStream.lastModifiedTime());

    if (resourceResponse.dataNeedsToBeWritten(attributes)) {
        String contentType = resourceStream.getContentType();

        if (contentType == null && Application.exists())
            contentType = Application.get().getMimeType(absolutePath);

        // set Content-Type (may be null)
        resourceResponse.setContentType(contentType);

        try {
            // read resource data
            final byte[] bytes;

            bytes = IOUtils.toByteArray(resourceStream.getInputStream());

            // send Content-Length header
            resourceResponse.setContentLength(bytes.length);

            // send response body with resource data
            resourceResponse.setWriteCallback(new WriteCallback() {
                @Override
                public void writeData(Attributes attributes) {
                    attributes.getResponse().write(bytes);
                }
            });
        } catch (IOException e) {
            log.debug(e.getMessage(), e);
            return sendResourceError(absolutePath, resourceResponse, 500, "Unable to read resource stream");
        } catch (ResourceStreamNotFoundException e) {
            log.debug(e.getMessage(), e);
            return sendResourceError(absolutePath, resourceResponse, 500, "Unable to open resource stream");
        } finally {
            try {
                resourceStream.close();
            } catch (IOException e) {
                log.warn("Unable to close the resource stream", e);
            }
        }
    }

    return resourceResponse;
}

From source file:org.jabylon.rest.ui.wicket.BasicPanel.java

License:Open Source License

protected boolean urlEndsOnSlash() {
    PageParameters params = getPageParameters();
    for (NamedPair value : params.getAllNamed()) {
        if (value.getValue().isEmpty())
            return true;
    }/*from w  w w  . j  a  va2s . c om*/

    // segments.addAll(params.getValues("segment"));
    for (int i = 0; i < params.getIndexedCount(); i++) {
        StringValue value = params.get(i);
        if (value.toString().isEmpty())
            return true;
    }
    return false;
}

From source file:org.jabylon.rest.ui.wicket.config.sections.security.RolesConfigSection.java

License:Open Source License

public RolesConfigSection(String id, IModel<UserManagement> model) {
    super(id, model);
    ComplexEObjectListDataProvider<Role> provider = new ComplexEObjectListDataProvider<Role>(model,
            UsersPackage.Literals.USER_MANAGEMENT__ROLES);
    ListView<Role> roleList = new ListView<Role>("role.row", provider) {

        private static final long serialVersionUID = 1L;

        @Override//w w  w .j  a v  a 2  s .co  m
        protected void populateItem(ListItem<Role> item) {

            IModel<String> nameProperty = new EObjectPropertyModel<String, Role>(item.getModel(),
                    UsersPackage.Literals.ROLE__NAME);
            item.add(new Label("rolename", nameProperty));
            item.add(new Label("roles", buildRoles(item.getModelObject())));
            PageParameters params = new PageParameters(getPage().getPageParameters());
            params.set(params.getIndexedCount(), "roles");
            params.set(params.getIndexedCount(), item.getModelObject().getName());
            item.add(new BookmarkablePageLink<Void>("edit", SettingsPage.class, params));
            item.add(new Link<Role>("delete", item.getModel()) {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick() {
                    try {
                        TransactionUtil.deleteWithCrossRefs(getModelObject());
                    } catch (CommitException e) {
                        getSession().error(e.getMessage());
                        logger.error("Failed to commit", e);
                    }
                }

            });
        }
    };
    add(roleList);
    roleList.setReuseItems(true);
    add(buildAddNewLink(getModel()));
}

From source file:org.jabylon.rest.ui.wicket.config.sections.security.RoleUsersConfigSection.java

License:Open Source License

public RoleUsersConfigSection(String id, IModel<UserManagement> model) {
    super(id, model);
    ComplexEObjectListDataProvider<Role> provider = new ComplexEObjectListDataProvider<Role>(model,
            UsersPackage.Literals.USER_MANAGEMENT__ROLES);
    ListView<Role> roleList = new ListView<Role>("role.row", provider) {

        private static final long serialVersionUID = 1L;

        @Override/*from  ww w  .  java2 s .  c o  m*/
        protected void populateItem(ListItem<Role> item) {

            IModel<String> nameProperty = new EObjectPropertyModel<String, Role>(item.getModel(),
                    UsersPackage.Literals.ROLE__NAME);
            item.add(new Label("rolename", nameProperty));
            item.add(new Label("roles", buildRoles(item.getModelObject())));
            PageParameters params = new PageParameters(getPage().getPageParameters());
            params.set(params.getIndexedCount(), "roles");
            params.set(params.getIndexedCount(), item.getModelObject().getName());
            item.add(new BookmarkablePageLink<Void>("edit", SettingsPage.class, params));
            item.add(new Link<Role>("delete", item.getModel()) {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick() {
                    try {
                        TransactionUtil.deleteWithCrossRefs(getModelObject());
                    } catch (CommitException e) {
                        getSession().error(e.getMessage());
                        logger.error("Failed to commit", e);
                    }
                }

            });
        }
    };
    roleList.setReuseItems(true);
    add(roleList);
    add(buildAddNewLink(getModel()));
}

From source file:org.jabylon.rest.ui.wicket.config.sections.security.UsersConfigSection.java

License:Open Source License

public UsersConfigSection(String id, IModel<UserManagement> model) {
    super(id, model);
    ComplexEObjectListDataProvider<User> provider = new ComplexEObjectListDataProvider<User>(model,
            UsersPackage.Literals.USER_MANAGEMENT__USERS);
    ListView<User> userList = new ListView<User>("user.row", provider) {

        private static final long serialVersionUID = 1L;

        @Override//from   w w w . j av a  2  s  .  co  m
        protected void populateItem(ListItem<User> item) {

            item.add(new UserImagePanel("username", item.getModel()));
            item.add(new Label("roles", buildRoles(item.getModelObject())));
            PageParameters params = new PageParameters(getPage().getPageParameters());
            params.set(params.getIndexedCount(), "users");
            String name = item.getModelObject().getName();
            //so it doesn't crash on a broken model
            if (name == null)
                name = "";
            params.set(params.getIndexedCount(), name);
            item.add(new BookmarkablePageLink<Void>("edit", SettingsPage.class, params));
            item.add(new Link<User>("delete", item.getModel()) {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick() {
                    try {
                        TransactionUtil.deleteWithCrossRefs(getModelObject());
                    } catch (CommitException e) {
                        getSession().error(e.getMessage());
                        logger.error("Failed to commit", e);
                    }
                }

            });
        }
    };
    userList.setReuseItems(true);
    add(userList);
    add(buildAddNewLink(getModel()));
}