Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.wst.web/static_web_project/org/eclipse/wst/project/facet/SimpleWebFacetInstallDataModelProvider.java')
-rw-r--r--plugins/org.eclipse.wst.web/static_web_project/org/eclipse/wst/project/facet/SimpleWebFacetInstallDataModelProvider.java149
1 files changed, 0 insertions, 149 deletions
diff --git a/plugins/org.eclipse.wst.web/static_web_project/org/eclipse/wst/project/facet/SimpleWebFacetInstallDataModelProvider.java b/plugins/org.eclipse.wst.web/static_web_project/org/eclipse/wst/project/facet/SimpleWebFacetInstallDataModelProvider.java
deleted file mode 100644
index c551407f2..000000000
--- a/plugins/org.eclipse.wst.web/static_web_project/org/eclipse/wst/project/facet/SimpleWebFacetInstallDataModelProvider.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.project.facet;
-
-import java.util.Set;
-
-import org.eclipse.core.internal.resources.ResourceStatus;
-import org.eclipse.core.internal.utils.Messages;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceStatus;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.componentcore.datamodel.FacetInstallDataModelProvider;
-import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonMessages;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonPlugin;
-import org.eclipse.wst.web.internal.ResourceHandler;
-
-import com.ibm.icu.text.UTF16;
-import com.ibm.icu.util.StringTokenizer;
-
-public class SimpleWebFacetInstallDataModelProvider extends FacetInstallDataModelProvider implements ISimpleWebFacetInstallDataModelProperties {
-
- public SimpleWebFacetInstallDataModelProvider() {
- super();
- }
-
- @Override
- public Set getPropertyNames() {
- Set names = super.getPropertyNames();
- names.add(CONTENT_DIR);
- names.add(CONTEXT_ROOT);
- return names;
- }
-
- @Override
- public Object getDefaultProperty(String propertyName) {
- if (propertyName.equals(CONTENT_DIR)) {
- return "WebContent"; //$NON-NLS-1$
- } else if (propertyName.equals(CONTEXT_ROOT)) {
- return getStringProperty(FACET_PROJECT_NAME).replace(' ', '_');
- } else if (propertyName.equals(FACET_ID)) {
- return IModuleConstants.WST_WEB_MODULE;
- }
- return super.getDefaultProperty(propertyName);
- }
-
- @Override
- public boolean propertySet(String propertyName, Object propertyValue) {
- if (FACET_PROJECT_NAME.equals(propertyName)) {
- model.notifyPropertyChange(CONTEXT_ROOT, IDataModel.VALID_VALUES_CHG);
- }
- return super.propertySet(propertyName, propertyValue);
- }
-
- @Override
- public IStatus validate(String name) {
- if (name.equals(CONTEXT_ROOT)) {
- return validateContextRoot(getStringProperty(CONTEXT_ROOT));
- }
- else if (name.equals(CONTENT_DIR)) {
- String folderName = model.getStringProperty(CONTENT_DIR);
- if (folderName == null || folderName.length() == 0 || folderName.equals("/") || folderName.equals("\\")) { //$NON-NLS-1$ //$NON-NLS-2$
- // all folders which meet the criteria of "CONFIG_FOLDER" are required
- String errorMessage = WTPCommonPlugin.getResourceString(WTPCommonMessages.WEBCONTENTFOLDER_EMPTY);
- return WTPCommonPlugin.createErrorStatus(errorMessage);
- }
- IStatus status = validateFolderName(folderName);
- if (status.isOK())
- {
- if (folderName.indexOf('#') != -1) {
- String message = NLS.bind(Messages.resources_invalidCharInName, "#", folderName); //$NON-NLS-1$
- status = new ResourceStatus(IResourceStatus.INVALID_VALUE, null, message);
- }
- }
- return status;
- }
-
- return super.validate(name);
- }
-
- protected IStatus validateContextRoot(String contextRoot) {
- if (contextRoot == null || contextRoot.length() == 0) {
- return new ResourceStatus(IResourceStatus.INVALID_VALUE, null, ResourceHandler.Context_Root_cannot_be_empty_2);
- } else if (contextRoot.trim().equals(contextRoot)) {
- StringTokenizer stok = new StringTokenizer(contextRoot, "."); //$NON-NLS-1$
- while (stok.hasMoreTokens()) {
- String token = stok.nextToken();
- int cp;
- for (int i = 0; i < token.length(); i += UTF16.getCharCount(cp)) {
- cp = UTF16.charAt(token, i);
- if(token.charAt(i) == ' ')
- {
- return new ResourceStatus(IResourceStatus.INVALID_VALUE, null, ResourceHandler.Names_cannot_contain_whitespace);
- }
- else if (!(token.charAt(i) == '_') && !(token.charAt(i) == '-') && !(token.charAt(i) == '/') && Character.isLetterOrDigit(token.charAt(i)) == false) {
- String invalidCharString = null;
- if (UTF16.getCharCount(cp)>1)
- {
- invalidCharString = UTF16.valueOf(cp);
- }
- else
- {
- invalidCharString = (new Character(token.charAt(i))).toString();
- }
- Object[] invalidChar = new Object[]{invalidCharString};
- String errorStatus = ResourceHandler.getString(ResourceHandler.The_character_is_invalid_in_a_context_root, invalidChar);
- return new ResourceStatus(IResourceStatus.INVALID_VALUE, null, errorStatus);
- }
- }
- }
- } else
- {
- return new ResourceStatus(IResourceStatus.INVALID_VALUE, null, ResourceHandler.Names_cannot_contain_whitespace);
- }
- return OK_STATUS;
- }
-
- protected IStatus validateFolderName(String folderName) {
- // the directory is not required, but if the name is entered ensure that it
- // contains only valid characters.
- if (folderName == null || folderName.length() == 0) {
- return OK_STATUS;
- }
- IWorkspace workspace = ResourcesPlugin.getWorkspace();
- IPath path = new Path(folderName);
- for (int i = 0, max = path.segmentCount(); i < max; i++) {
- IStatus status = workspace.validateName(path.segment(i), IResource.FOLDER);
- if (! status.isOK())
- return status;
- }
-
- // all of the potential segments of the folder have been verified
- return OK_STATUS;
- }
-}

Back to the top