{"action":"created","comment":{"url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/comments/32404285","id":32404285,"diff_hunk":"@@ -209,4 +215,42 @@ public boolean isMultiple() {\n         return this.multiple;\n     }\n \n+    /**\n+     * {@inheritDoc}\n+     *\n+     * @see org.komodo.spi.repository.PropertyDescriptor#isValid(java.lang.Object)\n+     */\n+    @Override\n+    public boolean isValid( final Object proposedValue ) {\n+        if ( ( this.constraints != null ) && ( this.constraints.length != 0 ) ) {\n+            if ( Type.STRING == this.type ) {\n+                String value = null;\n+\n+                if ( proposedValue instanceof String ) {\n+                    value = ( String )proposedValue;\n+                } else if ( proposedValue instanceof Value ) {\n+                    try {\n+                        value = ( ( Value )proposedValue ).getString();\n+                    } catch ( final Exception e ) {\n+                        return false;\n+                    }\n+                } else {\n+                    value = proposedValue.toString();\n+                }\n+\n+                for ( final String pattern : this.constraints ) {\n+                    if ( value.matches( pattern ) ) {\n+                        return true;\n+                    }\n+                }\n+\n+                return false;\n+            }\n+\n+            // TODO implement other type validation","path":"plugins/org.komodo.core/src/org/komodo/repository/PropertyDescriptorImpl.java","position":79,"original_position":79,"commit_id":"97a7749eed65508223fff931374e47445068440b","original_commit_id":"97a7749eed65508223fff931374e47445068440b","user":{"login":"phantomjinx","id":1634180,"avatar_url":"https://avatars.githubusercontent.com/u/1634180?v=3","gravatar_id":"","url":"https://api.github.com/users/phantomjinx","html_url":"https://github.com/phantomjinx","followers_url":"https://api.github.com/users/phantomjinx/followers","following_url":"https://api.github.com/users/phantomjinx/following{/other_user}","gists_url":"https://api.github.com/users/phantomjinx/gists{/gist_id}","starred_url":"https://api.github.com/users/phantomjinx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/phantomjinx/subscriptions","organizations_url":"https://api.github.com/users/phantomjinx/orgs","repos_url":"https://api.github.com/users/phantomjinx/repos","events_url":"https://api.github.com/users/phantomjinx/events{/privacy}","received_events_url":"https://api.github.com/users/phantomjinx/received_events","type":"User","site_admin":false},"body":"Should this be taken care of now or is this future work?","created_at":"2015-06-15T09:35:58Z","updated_at":"2015-06-15T09:35:58Z","html_url":"https://github.com/Teiid-Designer/komodo/pull/171#discussion_r32404285","pull_request_url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171","_links":{"self":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/comments/32404285"},"html":{"href":"https://github.com/Teiid-Designer/komodo/pull/171#discussion_r32404285"},"pull_request":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171"}}},"pull_request":{"url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171","id":37595914,"html_url":"https://github.com/Teiid-Designer/komodo/pull/171","diff_url":"https://github.com/Teiid-Designer/komodo/pull/171.diff","patch_url":"https://github.com/Teiid-Designer/komodo/pull/171.patch","issue_url":"https://api.github.com/repos/Teiid-Designer/komodo/issues/171","number":171,"state":"open","locked":false,"title":"Work on shell","user":{"login":"elvisisking","id":557336,"avatar_url":"https://avatars.githubusercontent.com/u/557336?v=3","gravatar_id":"","url":"https://api.github.com/users/elvisisking","html_url":"https://github.com/elvisisking","followers_url":"https://api.github.com/users/elvisisking/followers","following_url":"https://api.github.com/users/elvisisking/following{/other_user}","gists_url":"https://api.github.com/users/elvisisking/gists{/gist_id}","starred_url":"https://api.github.com/users/elvisisking/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elvisisking/subscriptions","organizations_url":"https://api.github.com/users/elvisisking/orgs","repos_url":"https://api.github.com/users/elvisisking/repos","events_url":"https://api.github.com/users/elvisisking/events{/privacy}","received_events_url":"https://api.github.com/users/elvisisking/received_events","type":"User","site_admin":false},"body":"- Added a FindCommand the prints out all the objects in the workspace of a specified type\r\n- Added code to prevent certain objects, like WorkspaceManager, from being renamed.\r\n- Added value constraints to PropertyDescriptor\r\n- Reorganized shell commands so that their help text can be overridden more easily\r\n- SetCommand now works for multi-valued properties. Tab-completion will print the current values comma-delimited for ease of editing.","created_at":"2015-06-12T19:23:22Z","updated_at":"2015-06-15T09:35:58Z","closed_at":null,"merged_at":null,"merge_commit_sha":"0ca4486fd909f9d9af21f470365dcd6ef413e2e4","assignee":{"login":"phantomjinx","id":1634180,"avatar_url":"https://avatars.githubusercontent.com/u/1634180?v=3","gravatar_id":"","url":"https://api.github.com/users/phantomjinx","html_url":"https://github.com/phantomjinx","followers_url":"https://api.github.com/users/phantomjinx/followers","following_url":"https://api.github.com/users/phantomjinx/following{/other_user}","gists_url":"https://api.github.com/users/phantomjinx/gists{/gist_id}","starred_url":"https://api.github.com/users/phantomjinx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/phantomjinx/subscriptions","organizations_url":"https://api.github.com/users/phantomjinx/orgs","repos_url":"https://api.github.com/users/phantomjinx/repos","events_url":"https://api.github.com/users/phantomjinx/events{/privacy}","received_events_url":"https://api.github.com/users/phantomjinx/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171/commits","review_comments_url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171/comments","review_comment_url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Teiid-Designer/komodo/issues/171/comments","statuses_url":"https://api.github.com/repos/Teiid-Designer/komodo/statuses/97a7749eed65508223fff931374e47445068440b","head":{"label":"elvisisking:shell-work","ref":"shell-work","sha":"97a7749eed65508223fff931374e47445068440b","user":{"login":"elvisisking","id":557336,"avatar_url":"https://avatars.githubusercontent.com/u/557336?v=3","gravatar_id":"","url":"https://api.github.com/users/elvisisking","html_url":"https://github.com/elvisisking","followers_url":"https://api.github.com/users/elvisisking/followers","following_url":"https://api.github.com/users/elvisisking/following{/other_user}","gists_url":"https://api.github.com/users/elvisisking/gists{/gist_id}","starred_url":"https://api.github.com/users/elvisisking/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elvisisking/subscriptions","organizations_url":"https://api.github.com/users/elvisisking/orgs","repos_url":"https://api.github.com/users/elvisisking/repos","events_url":"https://api.github.com/users/elvisisking/events{/privacy}","received_events_url":"https://api.github.com/users/elvisisking/received_events","type":"User","site_admin":false},"repo":{"id":24889705,"name":"komodo","full_name":"elvisisking/komodo","owner":{"login":"elvisisking","id":557336,"avatar_url":"https://avatars.githubusercontent.com/u/557336?v=3","gravatar_id":"","url":"https://api.github.com/users/elvisisking","html_url":"https://github.com/elvisisking","followers_url":"https://api.github.com/users/elvisisking/followers","following_url":"https://api.github.com/users/elvisisking/following{/other_user}","gists_url":"https://api.github.com/users/elvisisking/gists{/gist_id}","starred_url":"https://api.github.com/users/elvisisking/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elvisisking/subscriptions","organizations_url":"https://api.github.com/users/elvisisking/orgs","repos_url":"https://api.github.com/users/elvisisking/repos","events_url":"https://api.github.com/users/elvisisking/events{/privacy}","received_events_url":"https://api.github.com/users/elvisisking/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/elvisisking/komodo","description":"teiid modeling tool development utilizing ddl-based metamodel","fork":true,"url":"https://api.github.com/repos/elvisisking/komodo","forks_url":"https://api.github.com/repos/elvisisking/komodo/forks","keys_url":"https://api.github.com/repos/elvisisking/komodo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/elvisisking/komodo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/elvisisking/komodo/teams","hooks_url":"https://api.github.com/repos/elvisisking/komodo/hooks","issue_events_url":"https://api.github.com/repos/elvisisking/komodo/issues/events{/number}","events_url":"https://api.github.com/repos/elvisisking/komodo/events","assignees_url":"https://api.github.com/repos/elvisisking/komodo/assignees{/user}","branches_url":"https://api.github.com/repos/elvisisking/komodo/branches{/branch}","tags_url":"https://api.github.com/repos/elvisisking/komodo/tags","blobs_url":"https://api.github.com/repos/elvisisking/komodo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/elvisisking/komodo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/elvisisking/komodo/git/refs{/sha}","trees_url":"https://api.github.com/repos/elvisisking/komodo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/elvisisking/komodo/statuses/{sha}","languages_url":"https://api.github.com/repos/elvisisking/komodo/languages","stargazers_url":"https://api.github.com/repos/elvisisking/komodo/stargazers","contributors_url":"https://api.github.com/repos/elvisisking/komodo/contributors","subscribers_url":"https://api.github.com/repos/elvisisking/komodo/subscribers","subscription_url":"https://api.github.com/repos/elvisisking/komodo/subscription","commits_url":"https://api.github.com/repos/elvisisking/komodo/commits{/sha}","git_commits_url":"https://api.github.com/repos/elvisisking/komodo/git/commits{/sha}","comments_url":"https://api.github.com/repos/elvisisking/komodo/comments{/number}","issue_comment_url":"https://api.github.com/repos/elvisisking/komodo/issues/comments{/number}","contents_url":"https://api.github.com/repos/elvisisking/komodo/contents/{+path}","compare_url":"https://api.github.com/repos/elvisisking/komodo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/elvisisking/komodo/merges","archive_url":"https://api.github.com/repos/elvisisking/komodo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/elvisisking/komodo/downloads","issues_url":"https://api.github.com/repos/elvisisking/komodo/issues{/number}","pulls_url":"https://api.github.com/repos/elvisisking/komodo/pulls{/number}","milestones_url":"https://api.github.com/repos/elvisisking/komodo/milestones{/number}","notifications_url":"https://api.github.com/repos/elvisisking/komodo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/elvisisking/komodo/labels{/name}","releases_url":"https://api.github.com/repos/elvisisking/komodo/releases{/id}","created_at":"2014-10-07T12:43:07Z","updated_at":"2015-05-07T15:21:23Z","pushed_at":"2015-06-12T19:24:42Z","git_url":"git://github.com/elvisisking/komodo.git","ssh_url":"git@github.com:elvisisking/komodo.git","clone_url":"https://github.com/elvisisking/komodo.git","svn_url":"https://github.com/elvisisking/komodo","homepage":null,"size":48011,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"Teiid-Designer:master","ref":"master","sha":"ca6975dad37d1b2d3fdfe26262a366258753357f","user":{"login":"Teiid-Designer","id":1641911,"avatar_url":"https://avatars.githubusercontent.com/u/1641911?v=3","gravatar_id":"","url":"https://api.github.com/users/Teiid-Designer","html_url":"https://github.com/Teiid-Designer","followers_url":"https://api.github.com/users/Teiid-Designer/followers","following_url":"https://api.github.com/users/Teiid-Designer/following{/other_user}","gists_url":"https://api.github.com/users/Teiid-Designer/gists{/gist_id}","starred_url":"https://api.github.com/users/Teiid-Designer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Teiid-Designer/subscriptions","organizations_url":"https://api.github.com/users/Teiid-Designer/orgs","repos_url":"https://api.github.com/users/Teiid-Designer/repos","events_url":"https://api.github.com/users/Teiid-Designer/events{/privacy}","received_events_url":"https://api.github.com/users/Teiid-Designer/received_events","type":"Organization","site_admin":false},"repo":{"id":14528678,"name":"komodo","full_name":"Teiid-Designer/komodo","owner":{"login":"Teiid-Designer","id":1641911,"avatar_url":"https://avatars.githubusercontent.com/u/1641911?v=3","gravatar_id":"","url":"https://api.github.com/users/Teiid-Designer","html_url":"https://github.com/Teiid-Designer","followers_url":"https://api.github.com/users/Teiid-Designer/followers","following_url":"https://api.github.com/users/Teiid-Designer/following{/other_user}","gists_url":"https://api.github.com/users/Teiid-Designer/gists{/gist_id}","starred_url":"https://api.github.com/users/Teiid-Designer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Teiid-Designer/subscriptions","organizations_url":"https://api.github.com/users/Teiid-Designer/orgs","repos_url":"https://api.github.com/users/Teiid-Designer/repos","events_url":"https://api.github.com/users/Teiid-Designer/events{/privacy}","received_events_url":"https://api.github.com/users/Teiid-Designer/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Teiid-Designer/komodo","description":"teiid modeling tool development utilizing ddl-based metamodel","fork":false,"url":"https://api.github.com/repos/Teiid-Designer/komodo","forks_url":"https://api.github.com/repos/Teiid-Designer/komodo/forks","keys_url":"https://api.github.com/repos/Teiid-Designer/komodo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Teiid-Designer/komodo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Teiid-Designer/komodo/teams","hooks_url":"https://api.github.com/repos/Teiid-Designer/komodo/hooks","issue_events_url":"https://api.github.com/repos/Teiid-Designer/komodo/issues/events{/number}","events_url":"https://api.github.com/repos/Teiid-Designer/komodo/events","assignees_url":"https://api.github.com/repos/Teiid-Designer/komodo/assignees{/user}","branches_url":"https://api.github.com/repos/Teiid-Designer/komodo/branches{/branch}","tags_url":"https://api.github.com/repos/Teiid-Designer/komodo/tags","blobs_url":"https://api.github.com/repos/Teiid-Designer/komodo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Teiid-Designer/komodo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Teiid-Designer/komodo/git/refs{/sha}","trees_url":"https://api.github.com/repos/Teiid-Designer/komodo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Teiid-Designer/komodo/statuses/{sha}","languages_url":"https://api.github.com/repos/Teiid-Designer/komodo/languages","stargazers_url":"https://api.github.com/repos/Teiid-Designer/komodo/stargazers","contributors_url":"https://api.github.com/repos/Teiid-Designer/komodo/contributors","subscribers_url":"https://api.github.com/repos/Teiid-Designer/komodo/subscribers","subscription_url":"https://api.github.com/repos/Teiid-Designer/komodo/subscription","commits_url":"https://api.github.com/repos/Teiid-Designer/komodo/commits{/sha}","git_commits_url":"https://api.github.com/repos/Teiid-Designer/komodo/git/commits{/sha}","comments_url":"https://api.github.com/repos/Teiid-Designer/komodo/comments{/number}","issue_comment_url":"https://api.github.com/repos/Teiid-Designer/komodo/issues/comments{/number}","contents_url":"https://api.github.com/repos/Teiid-Designer/komodo/contents/{+path}","compare_url":"https://api.github.com/repos/Teiid-Designer/komodo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Teiid-Designer/komodo/merges","archive_url":"https://api.github.com/repos/Teiid-Designer/komodo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Teiid-Designer/komodo/downloads","issues_url":"https://api.github.com/repos/Teiid-Designer/komodo/issues{/number}","pulls_url":"https://api.github.com/repos/Teiid-Designer/komodo/pulls{/number}","milestones_url":"https://api.github.com/repos/Teiid-Designer/komodo/milestones{/number}","notifications_url":"https://api.github.com/repos/Teiid-Designer/komodo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Teiid-Designer/komodo/labels{/name}","releases_url":"https://api.github.com/repos/Teiid-Designer/komodo/releases{/id}","created_at":"2013-11-19T15:32:23Z","updated_at":"2015-06-04T14:25:02Z","pushed_at":"2015-06-12T19:23:22Z","git_url":"git://github.com/Teiid-Designer/komodo.git","ssh_url":"git@github.com:Teiid-Designer/komodo.git","clone_url":"https://github.com/Teiid-Designer/komodo.git","svn_url":"https://github.com/Teiid-Designer/komodo","homepage":null,"size":48753,"stargazers_count":1,"watchers_count":1,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":8,"mirror_url":null,"open_issues_count":24,"forks":8,"open_issues":24,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171"},"html":{"href":"https://github.com/Teiid-Designer/komodo/pull/171"},"issue":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/issues/171"},"comments":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/issues/171/comments"},"review_comments":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171/comments"},"review_comment":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/pulls/171/commits"},"statuses":{"href":"https://api.github.com/repos/Teiid-Designer/komodo/statuses/97a7749eed65508223fff931374e47445068440b"}}}}