Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gnu-social
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
194
Issues
194
List
Boards
Labels
Milestones
Merge Requests
12
Merge Requests
12
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gnu.io
gnu-social
Commits
8bb4eb53
Commit
8bb4eb53
authored
Sep 14, 2011
by
Evan Prodromou
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove NUM
parent
16c24b66
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
0 additions
and
1586 deletions
+0
-1586
extlib/Net/URL/Mapper.php
extlib/Net/URL/Mapper.php
+0
-324
extlib/Net/URL/Mapper/Exception.php
extlib/Net/URL/Mapper/Exception.php
+0
-104
extlib/Net/URL/Mapper/Part.php
extlib/Net/URL/Mapper/Part.php
+0
-142
extlib/Net/URL/Mapper/Part/Dynamic.php
extlib/Net/URL/Mapper/Part/Dynamic.php
+0
-81
extlib/Net/URL/Mapper/Part/Fixed.php
extlib/Net/URL/Mapper/Part/Fixed.php
+0
-70
extlib/Net/URL/Mapper/Part/Wildcard.php
extlib/Net/URL/Mapper/Part/Wildcard.php
+0
-80
extlib/Net/URL/Mapper/Path.php
extlib/Net/URL/Mapper/Path.php
+0
-451
extlib/Net/URL/Mapper/Path.plex
extlib/Net/URL/Mapper/Path.plex
+0
-334
No files found.
extlib/Net/URL/Mapper.php
deleted
100644 → 0
View file @
16c24b66
<?php
/**
* URL parser and mapper
*
* PHP version 5
*
* LICENSE:
*
* Copyright (c) 2006, Bertrand Mansion <golgote@mamasam.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* @category Net
* @package Net_URL_Mapper
* @author Bertrand Mansion <golgote@mamasam.com>
* @license http://opensource.org/licenses/bsd-license.php New BSD License
* @version CVS: $Id: Mapper.php 232857 2007-03-28 10:23:04Z mansion $
* @link http://pear.php.net/package/Net_URL_Mapper
*/
require_once
'Net/URL/Mapper/Path.php'
;
require_once
'Net/URL/Mapper/Exception.php'
;
/**
* URL parser and mapper class
*
* This class takes an URL and a configuration and returns formatted data
* about the request according to a configuration parameter
*
* @category Net
* @package Net_URL_Mapper
* @author Bertrand Mansion <golgote@mamasam.com>
* @version Release: @package_version@
*/
class
Net_URL_Mapper
{
/**
* Array of Net_URL_Mapper instances
* @var array
*/
private
static
$instances
=
array
();
/**
* Mapped paths collection
* @var array
*/
protected
$paths
=
array
();
/**
* Prefix used for url mapping
* @var string
*/
protected
$prefix
=
''
;
/**
* Optional scriptname if mod_rewrite is not available
* @var string
*/
protected
$scriptname
=
''
;
/**
* Mapper instance id
* @var string
*/
protected
$id
=
'__default__'
;
/**
* Class constructor
* Constructor is private, you should use getInstance() instead.
*/
private
function
__construct
()
{
}
/**
* Returns a singleton object corresponding to the requested instance id
* @param string Requested instance name
* @return Object Net_URL_Mapper Singleton
*/
public
static
function
getInstance
(
$id
=
'__default__'
)
{
if
(
!
isset
(
self
::
$instances
[
$id
]))
{
$m
=
new
Net_URL_Mapper
();
$m
->
id
=
$id
;
self
::
$instances
[
$id
]
=
$m
;
}
return
self
::
$instances
[
$id
];
}
/**
* Returns the instance id
* @return string Mapper instance id
*/
public
function
getId
()
{
return
$this
->
id
;
}
/**
* Parses a path and creates a connection
* @param string The path to connect
* @param array Default values for path parts
* @param array Regular expressions for path parts
* @return object Net_URL_Mapper_Path
*/
public
function
connect
(
$path
,
$defaults
=
array
(),
$rules
=
array
())
{
$pathObj
=
new
Net_URL_Mapper_Path
(
$path
,
$defaults
,
$rules
);
$this
->
addPath
(
$pathObj
);
return
$pathObj
;
}
/**
* Set the url prefix if needed
*
* Example: using the prefix to differenciate mapper instances
* <code>
* $fr = Net_URL_Mapper::getInstance('fr');
* $fr->setPrefix('/fr');
* $en = Net_URL_Mapper::getInstance('en');
* $en->setPrefix('/en');
* </code>
*
* @param string URL prefix
*/
public
function
setPrefix
(
$prefix
)
{
$this
->
prefix
=
'/'
.
trim
(
$prefix
,
'/'
);
}
/**
* Set the scriptname if mod_rewrite not available
*
* Example: will match and generate url like
* - index.php/view/product/1
* <code>
* $m = Net_URL_Mapper::getInstance();
* $m->setScriptname('index.php');
* </code>
* @param string URL prefix
*/
public
function
setScriptname
(
$scriptname
)
{
$this
->
scriptname
=
$scriptname
;
}
/**
* Will attempt to match an url with a defined path
*
* If an url corresponds to a path, the resulting values are returned
* in an array. If none is found, null is returned. In case an url is
* matched but its content doesn't validate the path rules, an exception is
* thrown.
*
* @param string URL
* @return array|null array if match found, null otherwise
* @throws Net_URL_Mapper_InvalidException
*/
public
function
match
(
$url
)
{
$nurl
=
'/'
.
trim
(
$url
,
'/'
);
// Remove scriptname if needed
if
(
!
empty
(
$this
->
scriptname
)
&&
strpos
(
$nurl
,
$this
->
scriptname
)
===
0
)
{
$nurl
=
substr
(
$nurl
,
strlen
(
$this
->
scriptname
));
if
(
empty
(
$nurl
))
{
$nurl
=
'/'
;
}
}
// Remove prefix
if
(
!
empty
(
$this
->
prefix
))
{
if
(
strpos
(
$nurl
,
$this
->
prefix
)
!==
0
)
{
return
null
;
}
$nurl
=
substr
(
$nurl
,
strlen
(
$this
->
prefix
));
if
(
empty
(
$nurl
))
{
$nurl
=
'/'
;
}
}
// Remove query string
if
((
$pos
=
strpos
(
$nurl
,
'?'
))
!==
false
)
{
$nurl
=
substr
(
$nurl
,
0
,
$pos
);
}
$paths
=
array
();
$values
=
null
;
// Make a list of paths that conform to route format
foreach
(
$this
->
paths
as
$path
)
{
$regex
=
$path
->
getFormat
();
if
(
preg_match
(
$regex
,
$nurl
))
{
$paths
[]
=
$path
;
}
}
// Make sure one of the paths found is valid
foreach
(
$paths
as
$path
)
{
$regex
=
$path
->
getRule
();
if
(
preg_match
(
$regex
,
$nurl
,
$matches
))
{
$values
=
$path
->
getDefaults
();
array_shift
(
$matches
);
$clean
=
array
();
foreach
(
$matches
as
$k
=>
$v
)
{
$v
=
trim
(
$v
,
'/'
);
if
(
!
is_int
(
$k
)
&&
$v
!==
''
)
{
$values
[
$k
]
=
$v
;
}
}
break
;
}
}
// A path conforms but does not validate
if
(
is_null
(
$values
)
&&
!
empty
(
$paths
))
{
$e
=
new
Net_URL_Mapper_InvalidException
(
'A path was found but is invalid.'
);
$e
->
setPath
(
$paths
[
0
]);
$e
->
setUrl
(
$url
);
throw
$e
;
}
return
$values
;
}
/**
* Generate an url based on given parameters
*
* Will attempt to find a path definition that matches the given parameters and
* will generate an url based on this path.
*
* @param array Values to be used for the url generation
* @param array Key/value pairs for query string if needed
* @param string Anchor (fragment) if needed
* @return string|false String if a rule was found, false otherwise
*/
public
function
generate
(
$values
=
array
(),
$qstring
=
array
(),
$anchor
=
''
)
{
// Use root path if any
if
(
empty
(
$values
)
&&
isset
(
$this
->
paths
[
'/'
]))
{
return
$this
->
scriptname
.
$this
->
prefix
.
$this
->
paths
[
'/'
]
->
generate
(
$values
,
$qstring
,
$anchor
);
}
foreach
(
$this
->
paths
as
$path
)
{
$set
=
array
();
foreach
(
$values
as
$k
=>
$v
)
{
if
(
$path
->
hasKey
(
$k
,
$v
))
{
$set
[
$k
]
=
$v
;
}
}
if
(
count
(
$set
)
==
count
(
$values
)
&&
count
(
$set
)
<=
$path
->
getMaxKeys
())
{
$req
=
$path
->
getRequired
();
if
(
count
(
array_intersect
(
array_keys
(
$set
),
$req
))
!=
count
(
$req
))
{
continue
;
}
$gen
=
$path
->
generate
(
$set
,
$qstring
,
$anchor
);
return
$this
->
scriptname
.
$this
->
prefix
.
$gen
;
}
}
return
false
;
}
/**
* Returns defined paths
* @return array Array of paths
*/
public
function
getPaths
()
{
return
$this
->
paths
;
}
/**
* Reset all paths
* This is probably only useful for testing
*/
public
function
reset
()
{
$this
->
paths
=
array
();
$this
->
prefix
=
''
;
}
/**
* Add a new path to the mapper
* @param object Net_URL_Mapper_Path object
*/
public
function
addPath
(
Net_URL_Mapper_Path
$path
)
{
$this
->
paths
[
$path
->
getPath
()]
=
$path
;
}
}
?>
\ No newline at end of file
extlib/Net/URL/Mapper/Exception.php
deleted
100644 → 0
View file @
16c24b66
<?php
/**
* Exception classes for Net_URL_Mapper
*
* PHP version 5
*
* LICENSE:
*
* Copyright (c) 2006, Bertrand Mansion <golgote@mamasam.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* @category Net
* @package Net_URL_Mapper
* @author Bertrand Mansion <golgote@mamasam.com>
* @license http://opensource.org/licenses/bsd-license.php New BSD License
* @version CVS: $Id: Exception.php 232857 2007-03-28 10:23:04Z mansion $
* @link http://pear.php.net/package/Net_URL_Mapper
*/
/**
* Base class for exceptions in PEAR
*/
require_once
'PEAR/Exception.php'
;
/**
* Base class for exceptions in Net_URL_Mapper package
*
* Such a base class is required by the Exception RFC:
* http://pear.php.net/pepr/pepr-proposal-show.php?id=132
* It will rarely be thrown directly, its specialized subclasses will be
* thrown most of the time.
*
* @category Net
* @package Net_URL_Mapper
* @version Release: @package_version@
*/
class
Net_URL_Mapper_Exception
extends
PEAR_Exception
{
}
/**
* Exception thrown when a path is invalid
*
* A path can conform to a given structure, but contain invalid parameters.
* <code>
* $m = Net_URL_Mapper::getInstance();
* $m->connect('hi/:name', null, array('name'=>'[a-z]+'));
* $m->match('/hi/FOXY'); // Will throw the exception
* </code>
*
* @category Net
* @package Net_URL_Mapper
* @version Release: @package_version@
*/
class
Net_URL_Mapper_InvalidException
extends
Net_URL_Mapper_Exception
{
protected
$path
;
protected
$url
;
public
function
setPath
(
$path
)
{
$this
->
path
=
$path
;
}
public
function
getPath
()
{
return
$this
->
path
;
}
public
function
setUrl
(
$url
)
{
$this
->
url
=
$url
;
}
public
function
getUrl
()
{
return
$this
->
url
;
}
}
?>
\ No newline at end of file
extlib/Net/URL/Mapper/Part.php
deleted
100644 → 0
View file @
16c24b66
<?php
/**
* URL parser and mapper
*
* PHP version 5
*
* LICENSE:
*
* Copyright (c) 2006, Bertrand Mansion <golgote@mamasam.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* @category Net
* @package Net_URL_Mapper
* @author Bertrand Mansion <golgote@mamasam.com>
* @license http://opensource.org/licenses/bsd-license.php New BSD License
* @version CVS: $Id: Part.php 232857 2007-03-28 10:23:04Z mansion $
* @link http://pear.php.net/package/Net_URL_Mapper
*/
abstract
class
Net_URL_Mapper_Part
{
protected
$defaults
;
protected
$rule
;
protected
$public
;
protected
$type
;
protected
$required
=
false
;
/**
* Part name if dynamic or content, generated from path
* @var string
*/
public
$content
;
const
DYNAMIC
=
1
;
const
WILDCARD
=
2
;
const
FIXED
=
3
;
public
function
__construct
(
$content
,
$path
)
{
$this
->
content
=
$content
;
$this
->
path
=
$path
;
}
public
function
setRule
(
$rule
)
{
$this
->
rule
=
$rule
;
}
abstract
public
function
getFormat
();
abstract
public
function
getRule
();
public
function
addSlash
(
$str
)
{
$str
=
trim
(
$str
,
'/'
);
if
((
$pos
=
strpos
(
$this
->
path
,
'/'
))
!==
false
)
{
if
(
$pos
==
0
)
{
$str
=
'/'
.
$str
;
}
else
{
$str
.=
'/'
;
}
}
return
$str
;
}
public
function
addSlashRegex
(
$str
)
{
$str
=
trim
(
$str
,
'/'
);
if
((
$pos
=
strpos
(
$this
->
path
,
'/'
))
!==
false
)
{
if
(
$pos
==
0
)
{
$str
=
'\/'
.
$str
;
}
else
{
$str
.=
'\/'
;
}
}
if
(
!
$this
->
isRequired
())
{
$str
=
'('
.
$str
.
'|)'
;
}
return
$str
;
}
public
function
setDefaults
(
$defaults
)
{
$this
->
defaults
=
(
string
)
$defaults
;
}
public
function
getType
()
{
return
$this
->
type
;
}
public
function
accept
(
$visitor
,
$method
=
null
)
{
$args
=
func_get_args
();
$visitor
->
$method
(
$this
,
$args
);
}
public
function
setRequired
(
$required
)
{
$this
->
required
=
$required
;
}
public
function
isRequired
()
{
return
$this
->
required
;
}
abstract
public
function
generate
(
$value
=
null
);
public
function
match
(
$value
)
{
$rule
=
$this
->
getRule
();
return
preg_match
(
'/^'
.
$rule
.
'$/'
,
$this
->
addSlash
(
$value
));
}
}
?>
\ No newline at end of file
extlib/Net/URL/Mapper/Part/Dynamic.php
deleted
100644 → 0
View file @
16c24b66
<?php
/**
* URL parser and mapper
*
* PHP version 5
*
* LICENSE:
*
* Copyright (c) 2006, Bertrand Mansion <golgote@mamasam.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* @category Net
* @package Net_URL_Mapper
* @author Bertrand Mansion <golgote@mamasam.com>
* @license http://opensource.org/licenses/bsd-license.php New BSD License
* @version CVS: $Id: Dynamic.php 232857 2007-03-28 10:23:04Z mansion $
* @link http://pear.php.net/package/Net_URL_Mapper
*/
require_once
'Net/URL/Mapper/Part.php'
;
class
Net_URL_Mapper_Part_Dynamic
extends
Net_URL_Mapper_Part
{
public
function
__construct
(
$content
,
$path
)
{
$this
->
type
=
Net_URL_Mapper_Part
::
DYNAMIC
;
$this
->
setRequired
(
true
);
parent
::
__construct
(
$content
,
$path
);
}
public
function
getFormat
()
{
return
$this
->
addSlashRegex
(
'[^\/]+'
);
}
public
function
getRule
()
{
if
(
!
empty
(
$this
->
rule
))
{
return
'(?P<'
.
$this
->
content
.
'>'
.
$this
->
addSlashRegex
(
$this
->
rule
)
.
')'
;
}
return
'(?P<'
.
$this
->
content
.
'>'
.
$this
->
addSlashRegex
(
'[^\/]+'
)
.
')'
;
}
public
function
generate
(
$value
=
null
)
{
if
(
is_array
(
$value
)
&&
isset
(
$value
[
$this
->
content
]))
{
$val
=
$value
[
$this
->
content
];
}
elseif
(
!
is_array
(
$value
)
&&
!
is_null
(
$value
))
{
$val
=
$value
;
}
else
{
$val
=
$this
->
defaults
;
}
return
$this
->
addSlash
(
urlencode
(
$val
));
}
}
?>
\ No newline at end of file
extlib/Net/URL/Mapper/Part/Fixed.php
deleted
100644 → 0
View file @
16c24b66
<?php
/**
* URL parser and mapper
*
* PHP version 5
*
* LICENSE:
*
* Copyright (c) 2006, Bertrand Mansion <golgote@mamasam.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* @category Net
* @package Net_URL_Mapper
* @author Bertrand Mansion <golgote@mamasam.com>
* @license http://opensource.org/licenses/bsd-license.php New BSD License
* @version CVS: $Id: Fixed.php 232857 2007-03-28 10:23:04Z mansion $
* @link http://pear.php.net/package/Net_URL_Mapper
*/
require_once
'Net/URL/Mapper/Part.php'
;
class
Net_URL_Mapper_Part_Fixed
extends
Net_URL_Mapper_Part
{
public
function
__construct
(
$content
,
$path
)
{
$this
->
type
=
Net_URL_Mapper_Part
::
FIXED
;
parent
::
__construct
(
$content
,
$path
);
}
public
function
getFormat
()
{
return
$this
->
getRule
();
}
public
function
getRule
()
{
return
preg_quote
(
$this
->
path
,
'/'
);
}
public
function
generate
(
$value
=
null
)
{
return
$this
->
path
;
}
}
?>
\ No newline at end of file
extlib/Net/URL/Mapper/Part/Wildcard.php
deleted
100644 → 0
View file @
16c24b66
<?php
/**
* URL parser and mapper
*
* PHP version 5
*
* LICENSE:
*
* Copyright (c) 2006, Bertrand Mansion <golgote@mamasam.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS